Skip to content

Commit c659d66

Browse files
committed
Add Base* interfaces/implementations for streaming encryption/decryption
1 parent 88e1269 commit c659d66

File tree

9 files changed

+868
-0
lines changed

9 files changed

+868
-0
lines changed
Lines changed: 121 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,121 @@
1+
public final class dev/whyoleg/cryptography/providers/base/BytesKt {
2+
public static final fun checkBounds (III)V
3+
}
4+
5+
public final class dev/whyoleg/cryptography/providers/base/algorithms/BaseAesImplicitIvDecryptFunction : dev/whyoleg/cryptography/providers/base/operations/CipherFunction {
6+
public fun <init> (ILkotlin/jvm/functions/Function2;)V
7+
public fun transform ([BII)[B
8+
public fun transformedSink (Lkotlinx/io/RawSink;)Lkotlinx/io/RawSink;
9+
public fun transformedSource (Lkotlinx/io/RawSource;)Lkotlinx/io/RawSource;
10+
}
11+
12+
public final class dev/whyoleg/cryptography/providers/base/algorithms/BaseAesImplicitIvEncryptFunction : dev/whyoleg/cryptography/providers/base/operations/CipherFunction {
13+
public fun <init> ([BLdev/whyoleg/cryptography/providers/base/operations/CipherFunction;)V
14+
public fun transform ([BII)[B
15+
public fun transformedSink (Lkotlinx/io/RawSink;)Lkotlinx/io/RawSink;
16+
public fun transformedSource (Lkotlinx/io/RawSource;)Lkotlinx/io/RawSource;
17+
}
18+
19+
public abstract interface class dev/whyoleg/cryptography/providers/base/algorithms/BaseAesIvAuthenticatedCipher : dev/whyoleg/cryptography/algorithms/AES$IvAuthenticatedCipher, dev/whyoleg/cryptography/providers/base/algorithms/BaseAesIvAuthenticatedDecryptor, dev/whyoleg/cryptography/providers/base/algorithms/BaseAesIvAuthenticatedEncryptor, dev/whyoleg/cryptography/providers/base/operations/BaseAuthenticatedCipher {
20+
}
21+
22+
public abstract interface class dev/whyoleg/cryptography/providers/base/algorithms/BaseAesIvAuthenticatedDecryptor : dev/whyoleg/cryptography/algorithms/AES$IvAuthenticatedDecryptor, dev/whyoleg/cryptography/providers/base/operations/BaseAuthenticatedDecryptor {
23+
public abstract fun createDecryptFunctionWithIv ([B[B)Ldev/whyoleg/cryptography/providers/base/operations/CipherFunction;
24+
public fun decryptWithIvBlocking ([B[B[B)[B
25+
public fun decryptingSinkWithIv ([BLkotlinx/io/RawSink;[B)Lkotlinx/io/RawSink;
26+
public fun decryptingSourceWithIv ([BLkotlinx/io/RawSource;[B)Lkotlinx/io/RawSource;
27+
}
28+
29+
public abstract interface class dev/whyoleg/cryptography/providers/base/algorithms/BaseAesIvAuthenticatedEncryptor : dev/whyoleg/cryptography/algorithms/AES$IvAuthenticatedEncryptor, dev/whyoleg/cryptography/providers/base/operations/BaseAuthenticatedEncryptor {
30+
public abstract fun createEncryptFunctionWithIv ([B[B)Ldev/whyoleg/cryptography/providers/base/operations/CipherFunction;
31+
public fun encryptWithIvBlocking ([B[B[B)[B
32+
public fun encryptingSinkWithIv ([BLkotlinx/io/RawSink;[B)Lkotlinx/io/RawSink;
33+
public fun encryptingSourceWithIv ([BLkotlinx/io/RawSource;[B)Lkotlinx/io/RawSource;
34+
}
35+
36+
public abstract interface class dev/whyoleg/cryptography/providers/base/algorithms/BaseAesIvCipher : dev/whyoleg/cryptography/algorithms/AES$IvCipher, dev/whyoleg/cryptography/providers/base/algorithms/BaseAesIvDecryptor, dev/whyoleg/cryptography/providers/base/algorithms/BaseAesIvEncryptor, dev/whyoleg/cryptography/providers/base/operations/BaseCipher {
37+
}
38+
39+
public abstract interface class dev/whyoleg/cryptography/providers/base/algorithms/BaseAesIvDecryptor : dev/whyoleg/cryptography/algorithms/AES$IvDecryptor, dev/whyoleg/cryptography/providers/base/operations/BaseDecryptor {
40+
public abstract fun createDecryptFunctionWithIv ([B)Ldev/whyoleg/cryptography/providers/base/operations/CipherFunction;
41+
public fun decryptWithIvBlocking ([B[B)[B
42+
public fun decryptingSinkWithIv ([BLkotlinx/io/RawSink;)Lkotlinx/io/RawSink;
43+
public fun decryptingSourceWithIv ([BLkotlinx/io/RawSource;)Lkotlinx/io/RawSource;
44+
}
45+
46+
public abstract interface class dev/whyoleg/cryptography/providers/base/algorithms/BaseAesIvEncryptor : dev/whyoleg/cryptography/algorithms/AES$IvEncryptor, dev/whyoleg/cryptography/providers/base/operations/BaseEncryptor {
47+
public abstract fun createEncryptFunctionWithIv ([B)Ldev/whyoleg/cryptography/providers/base/operations/CipherFunction;
48+
public fun encryptWithIvBlocking ([B[B)[B
49+
public fun encryptingSinkWithIv ([BLkotlinx/io/RawSink;)Lkotlinx/io/RawSink;
50+
public fun encryptingSourceWithIv ([BLkotlinx/io/RawSource;)Lkotlinx/io/RawSource;
51+
}
52+
53+
public abstract interface class dev/whyoleg/cryptography/providers/base/operations/BaseAuthenticatedCipher : dev/whyoleg/cryptography/operations/AuthenticatedCipher, dev/whyoleg/cryptography/providers/base/operations/BaseAuthenticatedDecryptor, dev/whyoleg/cryptography/providers/base/operations/BaseAuthenticatedEncryptor, dev/whyoleg/cryptography/providers/base/operations/BaseCipher {
54+
}
55+
56+
public abstract interface class dev/whyoleg/cryptography/providers/base/operations/BaseAuthenticatedDecryptor : dev/whyoleg/cryptography/operations/AuthenticatedDecryptor, dev/whyoleg/cryptography/providers/base/operations/BaseDecryptor {
57+
public fun createDecryptFunction ()Ldev/whyoleg/cryptography/providers/base/operations/CipherFunction;
58+
public abstract fun createDecryptFunction ([B)Ldev/whyoleg/cryptography/providers/base/operations/CipherFunction;
59+
public fun decryptBlocking ([B)[B
60+
public fun decryptBlocking ([B[B)[B
61+
public fun decryptingSink (Lkotlinx/io/RawSink;)Lkotlinx/io/RawSink;
62+
public fun decryptingSink (Lkotlinx/io/RawSink;[B)Lkotlinx/io/RawSink;
63+
public fun decryptingSource (Lkotlinx/io/RawSource;)Lkotlinx/io/RawSource;
64+
public fun decryptingSource (Lkotlinx/io/RawSource;[B)Lkotlinx/io/RawSource;
65+
}
66+
67+
public abstract interface class dev/whyoleg/cryptography/providers/base/operations/BaseAuthenticatedEncryptor : dev/whyoleg/cryptography/operations/AuthenticatedEncryptor, dev/whyoleg/cryptography/providers/base/operations/BaseEncryptor {
68+
public fun createEncryptFunction ()Ldev/whyoleg/cryptography/providers/base/operations/CipherFunction;
69+
public abstract fun createEncryptFunction ([B)Ldev/whyoleg/cryptography/providers/base/operations/CipherFunction;
70+
public fun encryptBlocking ([B)[B
71+
public fun encryptBlocking ([B[B)[B
72+
public fun encryptingSink (Lkotlinx/io/RawSink;)Lkotlinx/io/RawSink;
73+
public fun encryptingSink (Lkotlinx/io/RawSink;[B)Lkotlinx/io/RawSink;
74+
public fun encryptingSource (Lkotlinx/io/RawSource;)Lkotlinx/io/RawSource;
75+
public fun encryptingSource (Lkotlinx/io/RawSource;[B)Lkotlinx/io/RawSource;
76+
}
77+
78+
public abstract interface class dev/whyoleg/cryptography/providers/base/operations/BaseCipher : dev/whyoleg/cryptography/operations/Cipher, dev/whyoleg/cryptography/providers/base/operations/BaseDecryptor, dev/whyoleg/cryptography/providers/base/operations/BaseEncryptor {
79+
}
80+
81+
public abstract class dev/whyoleg/cryptography/providers/base/operations/BaseCipherFunction : dev/whyoleg/cryptography/providers/base/operations/CipherFunction, java/lang/AutoCloseable {
82+
public fun <init> ()V
83+
protected abstract fun finalizeIntoByteArray ([BI)I
84+
public static synthetic fun finalizeIntoByteArray$default (Ldev/whyoleg/cryptography/providers/base/operations/BaseCipherFunction;[BIILjava/lang/Object;)I
85+
protected abstract fun finalizeToByteArray ()[B
86+
protected abstract fun maxInputSize (II)I
87+
protected abstract fun maxOutputSize (I)I
88+
public fun transform ([BII)[B
89+
protected abstract fun transformAndFinalizeIntoByteArray ([B[BIII)I
90+
public static synthetic fun transformAndFinalizeIntoByteArray$default (Ldev/whyoleg/cryptography/providers/base/operations/BaseCipherFunction;[B[BIIIILjava/lang/Object;)I
91+
protected abstract fun transformAndFinalizeToByteArray ([BII)[B
92+
public static synthetic fun transformAndFinalizeToByteArray$default (Ldev/whyoleg/cryptography/providers/base/operations/BaseCipherFunction;[BIIILjava/lang/Object;)[B
93+
protected abstract fun transformIntoByteArray ([B[BIII)I
94+
public static synthetic fun transformIntoByteArray$default (Ldev/whyoleg/cryptography/providers/base/operations/BaseCipherFunction;[B[BIIIILjava/lang/Object;)I
95+
protected abstract fun transformToByteArray ([BII)[B
96+
public static synthetic fun transformToByteArray$default (Ldev/whyoleg/cryptography/providers/base/operations/BaseCipherFunction;[BIIILjava/lang/Object;)[B
97+
public fun transformedSink (Lkotlinx/io/RawSink;)Lkotlinx/io/RawSink;
98+
public fun transformedSource (Lkotlinx/io/RawSource;)Lkotlinx/io/RawSource;
99+
}
100+
101+
public abstract interface class dev/whyoleg/cryptography/providers/base/operations/BaseDecryptor : dev/whyoleg/cryptography/operations/Decryptor {
102+
public abstract fun createDecryptFunction ()Ldev/whyoleg/cryptography/providers/base/operations/CipherFunction;
103+
public fun decryptBlocking ([B)[B
104+
public fun decryptingSink (Lkotlinx/io/RawSink;)Lkotlinx/io/RawSink;
105+
public fun decryptingSource (Lkotlinx/io/RawSource;)Lkotlinx/io/RawSource;
106+
}
107+
108+
public abstract interface class dev/whyoleg/cryptography/providers/base/operations/BaseEncryptor : dev/whyoleg/cryptography/operations/Encryptor {
109+
public abstract fun createEncryptFunction ()Ldev/whyoleg/cryptography/providers/base/operations/CipherFunction;
110+
public fun encryptBlocking ([B)[B
111+
public fun encryptingSink (Lkotlinx/io/RawSink;)Lkotlinx/io/RawSink;
112+
public fun encryptingSource (Lkotlinx/io/RawSource;)Lkotlinx/io/RawSource;
113+
}
114+
115+
public abstract interface class dev/whyoleg/cryptography/providers/base/operations/CipherFunction {
116+
public abstract fun transform ([BII)[B
117+
public static synthetic fun transform$default (Ldev/whyoleg/cryptography/providers/base/operations/CipherFunction;[BIIILjava/lang/Object;)[B
118+
public abstract fun transformedSink (Lkotlinx/io/RawSink;)Lkotlinx/io/RawSink;
119+
public abstract fun transformedSource (Lkotlinx/io/RawSource;)Lkotlinx/io/RawSource;
120+
}
121+

0 commit comments

Comments
 (0)