// Copyright (c) 2020 // Author: Hugo Pointcheval import 'dart:async'; import 'dart:typed_data'; import 'package:flutter/services.dart'; class NativeCrypto { static const MethodChannel _channel = const MethodChannel('native.crypto.helper'); Future sumKeygen() async { final Uint8List aesKey = await _channel.invokeMethod('symKeygen'); return aesKey; } Future> symEncrypt( Uint8List payloadbytes, Uint8List aesKey) async { final List encyptedPayload = await _channel.invokeListMethod('symEncrypt', { 'payload': payloadbytes, 'aesKey': aesKey, }); return encyptedPayload; } Future symDecrypt( List payloadbytes, Uint8List aesKey) async { final Uint8List decryptedPayload = await _channel.invokeMethod('symDecrypt', { 'payload': payloadbytes, 'aesKey': aesKey, }); return decryptedPayload; } }