function
Library: Blowfish (OMFFBLOWFISH)
Import : omffblowfish.xmd |
Returns: A writable output target for streaming data. |
export string sink function writer-encrypt into value string sink output-data with-key value string encryption-key elsewhere
Use blowfish.writer-encrypt
to write encrypted data to a string sink
, its first
argument, and using an encryption key, its second argument. The
decrypted data (i.e., the clear text) is written to the sink returned by the blowfish.writer-encrypt
function call.
Note that the Blowfish algorithm processes data in 64-bit chunks. If
the length of the input is not a multiple of 64 bits, it will be
padded with null
bytes. Similarly, the length of the data written to
output-data
by blowfish.writer-encrypt
will be a multiple of 64 bits, and may
therefore be null
padded.
To use blowfish.writer-encrypt
, you must import omffblowfish.xmd
into your
program using a statement like this:
import "omffblowfish.xmd" prefixed by blowfish.
(Please see the import topic for more on importing.)
import "omffblowfish.xmd" prefixed by blowfish. define string source function hexadecimal-dump value string source s as using group "generate hexadecimal dump" submit s process local string clear-text initial { "Hello, World!" } local stream cypher-text open cypher-text as buffer using output as blowfish.writer-encrypt into cypher-text with-key "TESTKEY" output clear-text close cypher-text output hexadecimal-dump cypher-text || "%n" group "generate hexadecimal dump" find any => c output "2fz16rd" % binary c || " "