@@ -35,9 +35,8 @@ Stream<Uint8List> _aesCbcEncryptOrDecrypt(
35
35
bool encrypt,
36
36
Stream <List <int >> source,
37
37
List <int > iv,
38
- ) async * {
39
- final scope = _Scope ();
40
- try {
38
+ ) {
39
+ return _Scope .stream ((scope) async * {
41
40
assert (key.length == 16 || key.length == 32 );
42
41
final cipher =
43
42
key.length == 16 ? ssl.EVP_aes_128_cbc () : ssl.EVP_aes_256_cbc ();
@@ -91,42 +90,28 @@ Stream<Uint8List> _aesCbcEncryptOrDecrypt(
91
90
if (outLen.value > 0 ) {
92
91
yield outData.sublist (0 , outLen.value);
93
92
}
94
- } finally {
95
- scope.release ();
96
- }
93
+ });
97
94
}
98
95
99
96
class _AesCbcSecretKey implements AesCbcSecretKey {
100
97
final Uint8List _key;
101
98
_AesCbcSecretKey (this ._key);
102
99
103
100
@override
104
- Future <Uint8List > decryptBytes (List <int > data, List <int > iv) async {
105
- ArgumentError .checkNotNull (data, 'data' );
106
- ArgumentError .checkNotNull (iv, 'iv' );
107
- return await _bufferStream (decryptStream (Stream .value (data), iv));
108
- }
101
+ Future <Uint8List > decryptBytes (List <int > data, List <int > iv) async =>
102
+ await _bufferStream (decryptStream (Stream .value (data), iv));
109
103
110
104
@override
111
- Stream <Uint8List > decryptStream (Stream <List <int >> data, List <int > iv) {
112
- ArgumentError .checkNotNull (data, 'data' );
113
- ArgumentError .checkNotNull (iv, 'iv' );
114
- return _aesCbcEncryptOrDecrypt (_key, false , data, iv);
115
- }
105
+ Stream <Uint8List > decryptStream (Stream <List <int >> data, List <int > iv) =>
106
+ _aesCbcEncryptOrDecrypt (_key, false , data, iv);
116
107
117
108
@override
118
- Future <Uint8List > encryptBytes (List <int > data, List <int > iv) async {
119
- ArgumentError .checkNotNull (data, 'data' );
120
- ArgumentError .checkNotNull (iv, 'iv' );
121
- return await _bufferStream (encryptStream (Stream .value (data), iv));
122
- }
109
+ Future <Uint8List > encryptBytes (List <int > data, List <int > iv) async =>
110
+ await _bufferStream (encryptStream (Stream .value (data), iv));
123
111
124
112
@override
125
- Stream <Uint8List > encryptStream (Stream <List <int >> data, List <int > iv) {
126
- ArgumentError .checkNotNull (data, 'data' );
127
- ArgumentError .checkNotNull (iv, 'iv' );
128
- return _aesCbcEncryptOrDecrypt (_key, true , data, iv);
129
- }
113
+ Stream <Uint8List > encryptStream (Stream <List <int >> data, List <int > iv) =>
114
+ _aesCbcEncryptOrDecrypt (_key, true , data, iv);
130
115
131
116
@override
132
117
Future <Map <String , dynamic >> exportJsonWebKey () async =>
0 commit comments