createJwt method
Implementation
Map<String, dynamic> createJwt(String apiKey) {
String mainData = DateTime.now().toString();
String secretKey = secretKeyMaker(mainData).substring(0, 16);
final encrypter = Encrypter(
AES(Key.fromUtf8(secretKey), mode: AESMode.ctr, padding: null));
final iv = IV.fromUtf8(secretKey);
String encryptKey = encrypter.encrypt(apiKey, iv: iv).base64;
String secret = encrypter.encrypt("${mainData}_$mainData", iv: iv).base64;
final main = JWT(
{
'apiKey': encryptKey,
"createdAt": mainData,
"message":
"Here is encrypted GPT API key, generated by Auto Local Tool, you can use it to generate your language file. it's valid for 30 days.",
},
);
final mainToken =
main.sign(SecretKey(secret), expiresIn: Duration(days: 30));
return {'api': mainToken, 'secret': secret};
}