HarmonyOS RSA私钥加密公钥解密
无法解密成功,下面是方法,包含待解密串和公钥,公钥应该是2048的,麻烦帮忙正确解密出结果
rsaDecrypt(message: string, callback) {
  message = "aTc2-LTeM7Dsxo-2fuHeoC-k0pGU89jKm6xghw-gGllwyRz-q5ybwBc6wjIazfj14_3aWW1GzuG3mW6Qxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx9CHMqw9yjtYxAOwh-C_IVtt9euYfBzFqJTbgJgSWjHzFSUXG9za5ZyW8qt4YPTtXzCSu-uTUfpoxDoMGqS23rQTkiRACDGBVOC66jhTKMOgRfOcCXWqP6FuC25eRohHVMBc3r3AU_e5d-ObvbI_IaZGU4M6RV_Ptx0aQi3nA9rf94HlbouaAxy9xofHyIzXWt8vtAGt6PsEgAugikA";
  const PUBLICKEY_DEBUG = "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAiOpWXDGVxiq2ON0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxMbyrKNxhD840oMThOmFdLUsK8Aq8_akTzNQFg3bxiaf4vQxnDwyVWjeZD-7rFD4-NeX7pUPgxKpyHDUe8lmHceuHB_YktGN4Ewwk6-ofV0dOF8-BgrMtjZJ1dP_BgtR6haO013R61awGH1hJCz76477ykJzmbILbAcZ2Fr9Ki_UrJWOCFw1IQzadAcrPJk09N0p26KsM2pp2F-7TPVTKSsaXhQF5esN6aec5SwlNeIHu5rgCW93atHEvwdh6bBa3bKYzc2EMCJlgJF3UTgkPx3hyxL8Uut5KVGTwIDAQAB";
  const RSA512_PRIMES_2: string = 'RSA1024|PRIMES_2';
  const RSA512_PKCS1: string = 'RSA1024|PKCS1';
  let rsaGenerator = cryptoFramework.createAsyKeyGenerator(RSA512_PRIMES_2);
  let cipher = cryptoFramework.createCipher(RSA512_PKCS1);
  let that = new util.Base64Helper();
  // let priKey = that.decodeSync(RSA_DECRYPT_KEY);
  let pubKey = new Uint8Array(buffer.from(PUBLICKEY_DEBUG, 'base64url').buffer);
  let pubKeyBlob: cryptoFramework.DataBlob = { data: pubKey };
  rsaGenerator.convertKey(pubKeyBlob, null, (err, keyPair) => {
    if (err) {
      Logger.error(TAG, "convertKey: error." + (err as BusinessError).code);
      return;
    }
    cipher.init(cryptoFramework.CryptoMode.DECRYPT_MODE, keyPair.pubKey, null, (err, data) => {
      try {
        // let newMessage = that.decodeSync(message);
        let newMessage = new Uint8Array(buffer.from(message, 'base64url').buffer);
        let input: cryptoFramework.DataBlob = { data: newMessage };
        cipher.doFinal(input, (err, data) => {
          if (err) {
            Logger.error(TAG, "cipher doFinal." + (err as BusinessError).code);
            return;
          }
          Logger.info(TAG, "DecryptOutPut is " + data.data);
          let result = this.uint8ArrayToString(data.data);
          Logger.info(TAG, "result is " + result);
          callback(result)
        })
      } catch (err) {
        Logger.info(TAG, "cipher init error: " + (err as BusinessError).code);
        return err;
      }
    })
  })
}
        HarmonyOS
      
        赞
        
 收藏 0
 回答 1
 
        待解决
        
相关问题
 cryptoFramework是否支持RSA的私钥加密,公钥解密 
1686浏览  • 1回复 待解决
HarmonyOS  私钥加密公钥解密问题 
1167浏览  • 1回复 待解决
HarmonyOS RSA指定公钥或私钥字符串加密和解密 
1372浏览  • 1回复 待解决
HarmonyOS RSA公钥解密 
1339浏览  • 1回复 待解决
HarmonyOS  RSA如何用公钥解密 
2269浏览  • 1回复 待解决
HarmonyOS RSA 公钥加密成功,但使用私钥加密,初始化方法报错 
1227浏览  • 1回复 待解决
HarmonyOS中RSA如何用公钥解密? 
967浏览  • 0回复 待解决
HarmonyOS 如何使用公钥解密私钥加密,切换到代码中没法createVerify 
931浏览  • 1回复 待解决
HarmonyOS 关于RSA公钥加解密问题 
1296浏览  • 1回复 待解决
HarmonyOS  支持rsa使用公钥解密吗 
1480浏览  • 1回复 待解决
rsa 公钥解密初始化报错 
1546浏览  • 1回复 待解决
如何使用RSA公钥加密明文数据 
1638浏览  • 1回复 待解决
RSA加密,使用自有私钥解密报错 
1396浏览  • 1回复 待解决
rsa加密公钥convertKey异常:401 invalid param 
3404浏览  • 1回复 待解决
HarmonyOS  RSA中,如何通过私钥指数和公钥模数加载公私钥数据 
1173浏览  • 1回复 待解决
HarmonyOS的RSA中,如何通过私钥指数和公钥模数加载公私钥数据? 
823浏览  • 0回复 待解决
如何实现RSA的公钥PK加密一段文字 
1583浏览  • 1回复 待解决
sm2加解密中出现裸密文如何处理以及导入公钥加密和导入私钥解密的方法 
2575浏览  • 1回复 待解决
HarmonyOS RSA加密中,公私钥问题 
1229浏览  • 1回复 待解决
HarmonyOS ArkTS不支持RSA公钥解密吗,有其他ohpm库可以用吗? 
1036浏览  • 1回复 待解决
HarmonyOS RSA加密的base64秘钥转换 
1849浏览  • 1回复 待解决
如何使用服务端下发的RSA公钥(字符串)对明文数据进行加密 
2833浏览  • 1回复 待解决
Java中通过证书公钥 进行RSA/None/PKCS1Padding加密,在HarmonyOS中有对应的方式吗 
1129浏览  • 1回复 待解决
HarmonyOS 加密导入RSA1024秘钥对Demo 
1034浏览  • 1回复 待解决
HarmonyOS NDK开发密钥管理服务,rsa公钥导入的正确姿势? 
1046浏览  • 1回复 待解决





















私钥加密,公钥解密,公钥解密的部分,需要按照如下的代码进行编写:
使用rsa签名,对要加密的数据长度有限制,小于等于密钥长度-11个字节