aboutsummaryrefslogtreecommitdiff
path: root/raw-wiki-dump/GitRepositories%2Fuser%2Fsra%2Faes-keywrap.md
diff options
context:
space:
mode:
authorRob Austein <sra@hactrn.net>2020-09-13 23:10:21 +0000
committerRob Austein <sra@hactrn.net>2020-09-13 23:10:21 +0000
commit3aa8b1dd6e0f504ef83da99f8c9cdb2532f948f5 (patch)
treeca300cbdbc9b1ca3224441e50375d94c092223e8 /raw-wiki-dump/GitRepositories%2Fuser%2Fsra%2Faes-keywrap.md
parent4ba5e00d5cdd42087a76e379cc39604b2da89ea4 (diff)
Initial conversion pass
Diffstat (limited to 'raw-wiki-dump/GitRepositories%2Fuser%2Fsra%2Faes-keywrap.md')
-rw-r--r--raw-wiki-dump/GitRepositories%2Fuser%2Fsra%2Faes-keywrap.md44
1 files changed, 44 insertions, 0 deletions
diff --git a/raw-wiki-dump/GitRepositories%2Fuser%2Fsra%2Faes-keywrap.md b/raw-wiki-dump/GitRepositories%2Fuser%2Fsra%2Faes-keywrap.md
new file mode 100644
index 0000000..32485ba
--- /dev/null
+++ b/raw-wiki-dump/GitRepositories%2Fuser%2Fsra%2Faes-keywrap.md
@@ -0,0 +1,44 @@
+```
+#!htmlcomment
+
+This page is maintained automatically by a script. Don't modify this page by hand,
+your changes will just be overwritten the next time the script runs. Talk to your
+Friendly Neighborhood Repository Maintainer if you need to change something here.
+
+```
+
+```
+#!html
+<h1>AES key wrap</h1>
+
+<p>A preliminary implementation of AES Key Wrap, RFC 5649 flavor, using
+Cryptlib to supply the AES ECB transformations.</p>
+
+<p>aes_keywrap.py contains two different Python implementations:</p>
+
+<ol>
+<li><p>An implementation using Python longs as 64-bit integers; and</p></li>
+<li><p>An implementation using Python arrays.</p></li>
+</ol>
+
+<p>The first of these is the easiest to understand, as it can just do
+(long) integer arithmetic and follow the specification very closely.
+The second is closer to what one would do to implement this in an
+assembly language like C.</p>
+
+<p>aes_keywrap.[ch] is a C implementation. The API for this is not yet
+set in stone.</p>
+
+<p>All three implementations include test vectors.</p>
+
+<p>The two implementations based on byte arrays use shift and mask
+operations to handle the two numerical values ("m" and "t") which
+require byte swapping on little endian hardware; this is not the most
+efficient implementation possible, but it's portable, and will almost
+certainly be lost in the noise under the AES operations.</p>
+```
+
+[[RepositoryIndex(format=table,glob=user/sra/aes-keywrap)]]
+
+| Clone `https://git.cryptech.is/user/sra/aes-keywrap.git` |
+|---|