Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Next revision Both sides next revision
component:data [2016/05/24 23:58]
tykuhn2 Added cryptographic functions and "random"
component:data [2020/01/05 02:32]
is2511 [Tier 3 Callbacks] duplicate "generated", extra dot, second "and" -> ","
Line 4: Line 4:
  
 Component name: `data`.  ​ Component name: `data`.  ​
-Callbacks:+ 
 +Tier 1 Callbacks 
 +----------------
  
 - `crc32(data:​string):​string`  ​ - `crc32(data:​string):​string`  ​
Line 22: Line 24:
 - `getLimit():​number`  ​ - `getLimit():​number`  ​
   The maximum size of data that can be passed to other functions of the card.   The maximum size of data that can be passed to other functions of the card.
 +
 +Tier 2 Callbacks
 +----------------
 +
 - `encrypt(data:​string,​ key:string, iv:​string):​string`  ​ - `encrypt(data:​string,​ key:string, iv:​string):​string`  ​
   Applies AES encryption to the data using the key and (preferably) random IV.   Applies AES encryption to the data using the key and (preferably) random IV.
 - `decrypt(data:​string,​ key:string, iv:​string):​string`  ​ - `decrypt(data:​string,​ key:string, iv:​string):​string`  ​
   Reverses AES encryption on the data using the key and the IV.   Reverses AES encryption on the data using the key and the IV.
 +- `random(len:​number):​string`  ​
 +  Generates a random binary string of `len` length.
 +
 +Tier 3 Callbacks
 +----------------
 +
 - `generateKeyPair([bitLen:​number]):​table,​ table`  ​ - `generateKeyPair([bitLen:​number]):​table,​ table`  ​
   Generates a public/​private key pair for various cryptiographic functions.  ​   Generates a public/​private key pair for various cryptiographic functions.  ​
Line 33: Line 45:
 - `ecdsa(data:​string,​ key:​userdata[,​ sig:​string]):​string or boolean`  ​ - `ecdsa(data:​string,​ key:​userdata[,​ sig:​string]):​string or boolean`  ​
   Generates a signiture of data using a private key. If signature is present  ​   Generates a signiture of data using a private key. If signature is present  ​
-  verifies the signature using the public key and the previously generated ​  +  verifies the signature using the public keythe previously generated ​  
-  ​generated ​signature stringand the original string. +  signature string and the original string. 
-- `ecdh(privateKey:​userdata,​ publicKey:userData):​string`  ​+- `ecdh(privateKey:​userdata,​ publicKey:userdata):​string`  ​
   Generates a Diffie-Hellman shared key using the first user's private key and  ​   Generates a Diffie-Hellman shared key using the first user's private key and  ​
   the second user's public key. An example of a basic key relation:  ​   the second user's public key. An example of a basic key relation:  ​
-  `ecdh(userA.private,​ userB.public) == ecdh(userB.private, ​usera.public)`+  `ecdh(userA.private,​ userB.public) == ecdh(userB.private, ​userA.public)`
 - `deserializeKey(data:​string,​ type:​string):​table`  ​ - `deserializeKey(data:​string,​ type:​string):​table`  ​
   Transforms a key from string to it's arbitrary type.   Transforms a key from string to it's arbitrary type.
-- `random(len:​number):​string` ​  +
-  Generates a random binary string of `len` length. +
-  ​+
 ---- ----
  
 {{page>​component:​contents&​noheader&​noeditbutton&​nouser&​nofooter}} {{page>​component:​contents&​noheader&​noeditbutton&​nouser&​nofooter}}