Package: certify-issuer
Certify IssuerCertify Issuer нь сертификат, диплом, дансны хуулга зэрэг бичиг баримтыг блокчэйн дээр
баталгаажуулж өгөхhttps://github.com/corex-mn/certify-scухаалаг гэрээтэй харьцдаг python хэлний сан юм.Ингэхдээhttps://chainpoint.org/ийн v2.0 стандартыг ашигласан.Суулгах зааварpip install certify-issuerФункцүүдissuePDF файлын хаш утгыг тооцож ухаалаг гэрээнд бичээд,
гүйлгээний мэдээлэл болон нэмэлт мэдээллүүдийг файлын мэтадата дээр нэмэн шинэ файлд хадгална.ПараметрТайлбарЗаавал эсэхsrc_pathPDF эх файлын замтиймdest_pathМэтадата бичсэн PDF-ийг хадгалах замтиймcert_numСертификатын дахин давхцахгүй дугаарүгүйaddressБаталгаажуулагчийн блокчэйн хаягтиймissuer_nameБаталгаажуулагчийн нэрүгүйexpire_dateДуусах хугацааүгүйdescriptionТайлбар, нэмэлт мэдээлэлүгүйprivate_keyБаталгаажуулагчийн хувийн түлхүүрүгүй /keystore, passphrase өгөөгүй бол заавал/keystoreХувийн түлхүүрийн keystore файлүгүй /private_key өгөөгүй бол заавал/passphraseХувийн түлхүүрийн passphrase файлүгүй /private_key өгөөгүй бол заавал/certify_addressУхаалаг гэрээний хаягтиймnode_urlГүйлгээ хийх блокчэйний нөүдний хаягтиймis_testnetТест орчинд ажиллаж буй бол True утга өгнөүгүй /default=False/Жишээfrom certify_issuer import issuer
try:
    txid, error = issuer.issue(src_path='test.pdf',
                               dest_path='test_result.pdf',
                               cert_num='D00123123',
                               address=MY_ADDRESS,
                               issuer_name='Монгол Улсын Их Сургууль',
                               expire_date=0,
                               description='2022 оны хаврын улирлын төгсөлт',
                               private_key=MY_PRIVATE_KEY,
                               certify_address=CERTIFY_CONTRACT_ADDRESS,
                               node_url='https://node.corexchain.io',
                               is_testnet=False)
    if error is not None:
        print("Error: {}", error)
    else
        print("Success: {}", txid)
except Exception as e:
    print("Error: {}", e)issue_by_hashХаш стрингийг шууд ухаалаг гэрээнд баталгаажуулаадПараметрТайлбарЗаавал эсэхhash_strхаш утгатиймcert_numСертификатын дахин давхцахгүй дугаарүгүйaddressБаталгаажуулагчийн блокчэйн хаягтиймexpire_dateДуусах хугацааүгүйdescriptionТайлбар, нэмэлт мэдээлэлүгүйprivate_keyБаталгаажуулагчийн хувийн түлхүүрүгүй /keystore, passphrase өгөөгүй бол заавал/keystoreХувийн түлхүүрийн keystore файлүгүй /private_key өгөөгүй бол заавал/passphraseХувийн түлхүүрийн passphrase файлүгүй /private_key өгөөгүй бол заавал/certify_addressУхаалаг гэрээний хаягтиймnode_urlГүйлгээ хийх блокчэйний нөүдний хаягтиймis_testnetТест орчинд ажиллаж буй бол True утга өгнөүгүй /default=False/Жишээfrom certify_issuer import issuer
hash_str = some_hash_function(file_or_something)
try:
    (tx, proof), error = issuer.issue(
                               hash_str='89995e30DAB8E3F9113e216EEB2f44f6B8eb5738',
                               cert_num='D00123123',
                               address=MY_ADDRESS,
                               expire_date=0,
                               description='2022 оны хаврын улирлын төгсөлт',
                               private_key=MY_PRIVATE_KEY,
                               certify_address=CERTIFY_CONTRACT_ADDRESS,
                               node_url='https://node.corexchain.io',
                               is_testnet=False)
    if error is not None:
        print("Error: {}", error)
    else
        print("Success: {} {}", tx, proof)
except Exception as e:
    print("Error: {}", e)revokeНэгэнт ухаалаг гэрээнд баталгаажсан PDF файлыг буцаан хүчингүй болгох функцПараметрТайлбарЗаавал эсэхsrc_pathМэтадата бичигдсэн PDF файлын замтиймaddressБаталгаажуулагчийн блокчэйн хаягтиймrevoker_nameХүчингүй болгож буй хүний нэртиймprivate_keyБаталгаажуулагчийн хувийн түлхүүрүгүй /keystore, passphrase өгөөгүй бол заавал/keystoreХувийн түлхүүрийн keystore файлүгүй /private_key өгөөгүй бол заавал/passphraseХувийн түлхүүрийн passphrase файлүгүй /private_key өгөөгүй бол заавал/certify_addressУхаалаг гэрээний хаягтиймnode_urlГүйлгээ хийх блокчэйний нөүдний хаягтиймis_testnetТест орчинд ажиллаж буй бол True утга өгнөүгүй /default=False/Жишээfrom certify_issuer import issuer
try:
    tx, error = issuer.revoke(
                           src_path='test_result.pdf',
                           address=MY_ADDRESS,
                           revoker_name='Mr. Revoker'
                           private_key=MY_PRIVATE_KEY,
                           certify_address=CERTIFY_CONTRACT_ADDRESS,
                           node_url='https://node.corexchain.io',
                           is_testnet=False)
    if error is not None:
        print("Error: {}", error)
    else
        print("Success: {}", tx)

except Exception as e:
    print("Error: {}", e)revoke_by_hashНэгэнт ухаалаг гэрээнд баталгаажсан хаш утгыг буцаан хүчингүй болгох функцПараметрТайлбарЗаавал эсэхhash_strхаштиймaddressБаталгаажуулагчийн блокчэйн хаягтиймrevoker_nameХүчингүй болгож буй хүний нэртиймprivate_keyБаталгаажуулагчийн хувийн түлхүүрүгүй /keystore, passphrase өгөөгүй бол заавал/keystoreХувийн түлхүүрийн keystore файлүгүй /private_key өгөөгүй бол заавал/passphraseХувийн түлхүүрийн passphrase файлүгүй /private_key өгөөгүй бол заавал/certify_addressУхаалаг гэрээний хаягтиймnode_urlГүйлгээ хийх блокчэйний нөүдний хаягтиймis_testnetТест орчинд ажиллаж буй бол True утга өгнөүгүй /default=False/Жишээfrom certify_issuer import issuer
hash_str = some_hash_function(file_or_something)
try:
    tx, error = issuer.revoke_by_hash(
                           hash_str=hash_str,
                           address=MY_ADDRESS,
                           revoker_name='Mr. Revoker'
                           private_key=MY_PRIVATE_KEY,
                           certify_address=CERTIFY_CONTRACT_ADDRESS,
                           node_url='https://node.corexchain.io',
                           is_testnet=False)
    if error is not None:
        print("Error: {}", error)
    else
        print("Success: {}", tx)
except Exception as e:
    print("Error: {}", e)