如何使用SHA256在Flutter中散列值?

时间:2019-05-17 12:28:10

标签: algorithm hash dart flutter sha256

Flutter中的哈希值(字符串或Int OR等...)## 标题 ##

我具有“ Almahery”之类的价值

如何在SHA 256中进行哈希处理?

2 个答案:

答案 0 :(得分:1)

  1. 导入(加密):

    import 'package:crypto/crypto.dart';
    
  2. 然后添加此代码:

    var bytes1 = utf8.encode("Almahery");         // data being hashed
    var digest1 = sha256.convert(bytes1);         // Hashing Process
    print("Digest as bytes: ${digest1.bytes}");   // Print Bytes
    print("Digest as hex string: $digest1");      // Print After Hashing
    

答案 1 :(得分:-2)

我尝试了《穆罕默德指南》,但后来缺少一种解密数据的方法。为了解密数据,需要一个公共的签名(在发送者和接收者之间)。因此,我使用签名创建了一个新版本。这对我有用。我最终得到以下代码:

import 'package:crypto/crypto.dart';

String generateSignature(String dataIn, signature) {
var encodedKey = utf8.encode(signature); // signature=encryption key
var hmacSha256 = new Hmac(sha256, encodedKey); // HMAC-SHA256 with key
var bytesDataIn = utf8.encode(dataIn);   // encode the data to Unicode.
var digest = hmacSha256.convert(bytesDataIn);  // encrypt target data
String singedValue = digest.toString();
return singedValue;
}

非常相似的代码,但是添加了签名哈希密钥,然后声明了新的Hmac,然后对数据进行了哈希处理。这只是颤动的代码!您将需要在Web服务器端编写解密。希望这可以帮助。祝好运!值