Issue certificates using blockchain and smart contract
Project description
Certify4py
Certify4py нь цахим сертификат, дипломыг блокчэйн дээр баталгаажуулж өгөх https://github.com/teo-mn/certify-sc ухаалаг гэрээтэй харьцдаг python хэлний сан юм. Уг ухаалаг гэрээ нь ИДС-ын дипломыг блокчэйнд баталгаажуулах стандарт бөгөөд дэлгэрэнгүйг дээрх линкээс харна уу.
Ингэхдээ https://chainpoint.org/ ийн v2.0 стандартыг ашигласан.
-
Тестнет -тэй холбогдох нөүд:
https://node-testnet.corexchain.io
-
Теснет дээрх ухаалаг гэрээний хаяг:
0xc0668aC1BE4393F9dA6c8eB81a24faA4F9B04Edb
-
Майннет -тэй холбогдох нөүд:
https://node.corexchain.io
-
Майннет дээрх ухаалаг гэрээний хаяг:
0xD882B76106d0Ba1a54DE30d620dC5c2892Ae1677
Суулгах заавар
pip install certify4py
Функцүүд
UniversityDiplomaIssuer.issue_pdf
PDF файлын хаш утгыг тооцож ухаалаг гэрээнд бичээд, гүйлгээний мэдээлэл болон нэмэлт мэдээллүүдийг файлын мэтадата дээр нэмэн шинэ файлд хадгална.
Байгуулагчийн параметр:
Параметр | Тайлбар | Заавал эсэх |
---|---|---|
certify_contract_address |
Ухаалаг гэрээний хаяг | тийм |
node_host |
Гүйлгээ хийх блокчэйний нөүдний хаяг | тийм |
issuer_address |
Баталгаажуулагчийн хаяг | тийм |
issuer_name |
Баталгаажуулагчийн нэр | тийм |
chain_id |
Баталгаажуулагчийн нэр (default=1104) | үгүй |
hash_type |
Хашийн төрөл (default=sha256) | үгүй |
issue_pdf
функцийн параметр:
Параметр | Тайлбар | Заавал эсэх |
---|---|---|
id |
Файлын ID | тийм |
source_file_path |
PDF эх файлын зам | тийм |
destination_file_path |
Мэтадата бичсэн PDF-ийг хадгалах зам | тийм |
meta_data |
Дипломын тухай мэдээлэл | тийм |
expire_date |
Дуусах хугацаа | үгүй |
desc |
Тайлбар, нэмэлт мэдээлэл | үгүй |
additional_info |
Мэтадата дээр орох нэмэлт мэдээлэл | үгүй |
private_key |
Баталгаажуулагчийн хувийн түлхүүр | үгүй /key_store, passphrase өгөөгүй бол заавал/ |
key_store |
Хувийн түлхүүрийн keystore файл | үгүй /private_key өгөөгүй бол заавал/ |
passphrase |
Хувийн түлхүүрийн passphrase файл | үгүй /private_key өгөөгүй бол заавал/ |
Жишээ
from certify4py.UniversityDiplomaIssuer import UniversityDiplomaIssuer
issuer = UniversityDiplomaIssuer(certify_contract_address,
node_host,
issuer_address,
issuer_name,
chain_id=3305)
try:
txid, error = issuer.issue_pdf(
id,
source_file_path,
destination_file_path,
expire_date,
desc,
additional_info,
private_key,
key_store,
passphrase)
if error is not None:
print("Error: {}", error)
else
print("Success: {}", txid)
except Exception as e:
print("Error: {}", e)
UniversityDiplomaIssuer.verify_pdf
Блочкэйн дээр хадгалагдсан PDF файлийг шалгах.
Байгуулагчийн параметр:
Параметр | Тайлбар | Заавал эсэх |
---|---|---|
certify_contract_address |
Ухаалаг гэрээний хаяг | тийм |
node_host |
Гүйлгээ хийх блокчэйний нөүдний хаяг | тийм |
UniversityDiplomaIssuer.verify_pdf
функцийн параметр:
Параметр | Тайлбар | Заавал эсэх |
---|---|---|
file_path |
Метадата -тай файлын зам | тийм |
Жишээ
from certify4py.UniversityDiplomaIssuer import UniversityDiplomaIssuer
issuer = UniversityDiplomaIssuer(certify_contract_address,
teo_node_url,
chain_id=3305)
try:
result = issuer.verify_pdf(file_path)
print("Result: {}", result)
except Exception as e:
print("Error: {}", e)
Revoke
Нэгэнт ухаалаг гэрээнд баталгаажсан PDF файлыг буцаан хүчингүй болгох функц
Байгуулагчийн параметр:
Параметр | Тайлбар | Заавал эсэх |
---|---|---|
certify_contract_address |
Ухаалаг гэрээний хаяг | тийм |
node_host |
Гүйлгээ хийх блокчэйний нөүдний хаяг | тийм |
issuer_address |
Баталгаажуулагчийн хаяг | тийм |
issuer_name |
Баталгаажуулагчийн нэр | үгүй |
chain_id |
Баталгаажуулагчийн нэр | үгүй |
hash_type |
Хашийн төрөл | үгүй |
revoke
функцийн параметр:
Параметр | Тайлбар | Заавал эсэх |
---|---|---|
file_path |
Мэтадата бичигдсэн PDF файлын зам | тийм |
revoker_name |
Хүчингүй болгож буй хүний нэр | тийм |
private_key |
Баталгаажуулагчийн хувийн түлхүүр | үгүй /key_store, passphrase өгөөгүй бол заавал/ |
key_store |
Хувийн түлхүүрийн key_store файл | үгүй /private_key өгөөгүй бол заавал/ |
passphrase |
Хувийн түлхүүрийн passphrase файл | үгүй /private_key өгөөгүй бол заавал/ |
Жишээ
from certify4py.UniversityDiplomaIssuer import PdfIssuer
issuer = PdfIssuer(certify_contract_address,
node_host,
issuer_address,
issuer_name,
chain_id=3305)
try:
txid, error = issuer.revoke(file_path,
revoker_name,
key_store,
passphrase)
print("Txid: {}", txid)
except Exception as e:
print("Error: {}", e)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file certify4py-0.1.6.tar.gz
.
File metadata
- Download URL: certify4py-0.1.6.tar.gz
- Upload date:
- Size: 14.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.0 CPython/3.8.16
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 027df89565f010bbf7baf08a96d6397dc1d382d5f2b3ce3ae0f086eea4c39c42 |
|
MD5 | 1b11e79f9a46876e2928077be1cd47d1 |
|
BLAKE2b-256 | 05e8883345be53b3f2dd5d716347732aab4f198a3f9ec3a1cd0e934eef3b0f88 |