UNPKG

yggjs-gm

Version:

国密算法 TypeScript 库 - 支持 SM2/SM3/SM4 算法的现代化实现

1 lines 1.63 kB
{"version":3,"sources":["../src/index.ts"],"names":["sm2"],"mappings":";;;;;;AAcA,IAAM,SAAS,MAAM;AACnB,EAAA,MAAM,OAAA,GAAUA,aAAI,kBAAA,EAAmB;AACvC,EAAA,MAAM,aAAa,OAAA,CAAQ,UAAA;AAC3B,EAAA,MAAM,YAAY,OAAA,CAAQ,SAAA;AAC1B,EAAA,OAAO;AAAA,IACL,UAAA;AAAA,IACA;AAAA,GACF;AACF,CAAA;AAQA,IAAM,UAAA,GAAa,CAAC,SAAA,EAAmB,IAAA,KAAiB;AACtD,EAAA,OAAOA,YAAA,CAAI,SAAA,CAAU,IAAA,EAAM,SAAA,EAAW,CAAC,CAAA;AACzC,CAAA;AAQA,IAAM,UAAA,GAAa,CAAC,UAAA,EAAoB,aAAA,KAA0B;AAChE,EAAA,OAAOA,YAAA,CAAI,SAAA,CAAU,aAAA,EAAe,UAAA,EAAY,CAAC,CAAA;AACnD,CAAA;AAEA,IAAO,WAAA,GAAQ;AAAA,EACb,MAAA;AAAA,EACA,UAAA;AAAA,EACA;AACF","file":"index.cjs","sourcesContent":["/**\n * 国密算法 TypeScript 库主入口\n *\n * @description 提供 SM2/SM3/SM4 国密算法的现代化 TypeScript 实现\n * @version 0.1.0\n * @author YggJS Team\n * @license Apache-2.0\n */\n\nimport { sm2 } from 'sm-crypto';\n\n/**\n * 生成密钥对\n */\nconst getKey = () => {\n const keypair = sm2.generateKeyPairHex();\n const privateKey = keypair.privateKey; // 64字符私钥\n const publicKey = keypair.publicKey; // 04开头公钥\n return {\n privateKey,\n publicKey,\n };\n};\n\n/**\n * 使用sm2算法加密\n * @param publicKey\n * @param text\n * @returns\n */\nconst sm2Encrypt = (publicKey: string, text: string) => {\n return sm2.doEncrypt(text, publicKey, 0);\n};\n\n/**\n * 使用sm2算法解密\n * @param privateKey\n * @param encryptedText\n * @returns\n */\nconst sm2Decrypt = (privateKey: string, encryptedText: string) => {\n return sm2.doDecrypt(encryptedText, privateKey, 0);\n};\n\nexport default {\n getKey,\n sm2Encrypt,\n sm2Decrypt,\n};\n"]}