我正在使用 Flutter、Dart 和 SQLite 開發移動應用程式。它只是一個登錄頁面驗證型別的專案,我需要在插入資料庫時??加密密碼和用戶的個人詳細資訊。至少我希望密碼被加密。怎么可能做到這一點?
uj5u.com熱心網友回復:
您可以使用encrypt插件來加密字串。
對于高級加密標準 (AES),您可以這樣做:
final plainText = 'YOUR_PASSWORD';
final key = Key.fromUtf8('my 32 length key................');
final iv = IV.fromLength(16);
final encrypter = Encrypter(AES(key));
final encrypted = encrypter.encrypt(plainText, iv: iv);
final decrypted = encrypter.decrypt(encrypted, iv: iv);
print(decrypted); // YOUR_PASSWORD
print(encrypted.base64);// YOUR_ENCRYPTED_STRING
uj5u.com熱心網友回復:
我已經為 Dart 使用了加密散列函式,它對我來說很好用。
下面的代碼是我用來散列密碼的代碼。
import 'package:crypto/crypto.dart';
import 'dart:convert'; // for the utf8.encode method
void main() {
var bytes = utf8.encode("password"); // data being hashed
var digest = sha256.convert(bytes);
print("Digest as bytes: ${digest.bytes}");
print("Digest as hex string: $digest");
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/363747.html
上一篇:在SQLite中拆分字串
