Crypt-CCM

 view release on metacpan or  search on metacpan

lib/Crypt/CCM.pm  view on Meta::CPAN

  $c->set_aad($associated_data);
  my $plain_text = $c->decrypt($cipher_text);
  printf qq{decrypt: %s\n}, $plain_text;

=head1 SEE ALSO

NIST Special Publication 800-38C - Recommendation for Block Cipher Modes of Operation: The CCM Mode for Authentication and Confidentiality.

L<http://csrc.nist.gov/CryptoToolkit/modes/800-38_Series_Publications/SP800-38C.pdf>

RFC 3610 - Counter with CBC-MAC (CCM)

L<http://tools.ietf.org/html/rfc3610>

=head1 AUTHOR

Hiroyuki OYAMA, E<lt>oyama@module.jp<gt>

=head1 COPYRIGHT AND LICENSE

Copyright (C) 2006 by Hiroyuki OYAMA

t/03-rfc3610.t  view on Meta::CPAN

            $result{$key} = pack 'H*', $value;
        }
    }
    return undef if !exists $result{K};
    return \%result;
}

# Test Vector from RFC 3610
__DATA__
M  E
K  C0C1C2C3C4C5C6C7C8C9CACBCCCDCECF
TL 64
N  00000003020100A0A1A2A3A4A5
A  0001020304050607
PT 08090A0B0C0D0E0F101112131415161718191A1B1C1D1E
CT 0001020304050607588C979A61C663D2F066D0C2C0F989806D5F6B61DAC38417E8D12CFDF926E0
M  E
K  C0C1C2C3C4C5C6C7C8C9CACBCCCDCECF
TL 64
N  00000004030201A0A1A2A3A4A5
A  0001020304050607
PT 08090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F
CT 000102030405060772C91A36E135F8CF291CA894085C87E3CC15C439C9E43A3BA091D56E10400916
M  E
K  C0C1C2C3C4C5C6C7C8C9CACBCCCDCECF
TL 64
N  00000005040302A0A1A2A3A4A5
A  0001020304050607
PT 08090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F20
CT 000102030405060751B1E5F44A197D1DA46B0F8E2D282AE871E838BB64DA8596574ADAA76FBD9FB0C5
M  E
K  C0C1C2C3C4C5C6C7C8C9CACBCCCDCECF
TL 64
N  00000006050403A0A1A2A3A4A5
A  000102030405060708090A0B
PT 0C0D0E0F101112131415161718191A1B1C1D1E
CT 000102030405060708090A0BA28C6865939A9A79FAAA5C4C2A9D4A91CDAC8C96C861B9C9E61EF1
M  E
K  C0C1C2C3C4C5C6C7C8C9CACBCCCDCECF
TL 64
N  00000007060504A0A1A2A3A4A5
A  000102030405060708090A0B
PT 0C0D0E0F101112131415161718191A1B1C1D1E1F
CT 000102030405060708090A0BDCF1FB7B5D9E23FB9D4E131253658AD86EBDCA3E51E83F077D9C2D93
M  E
K  C0C1C2C3C4C5C6C7C8C9CACBCCCDCECF
N  00000008070605A0A1A2A3A4A5
TL 64
A  000102030405060708090A0B
PT 0C0D0E0F101112131415161718191A1B1C1D1E1F20
CT 000102030405060708090A0B6FC1B011F006568B5171A42D953D469B2570A4BD87405A0443AC91CB94
M  E
K  C0C1C2C3C4C5C6C7C8C9CACBCCCDCECF
N  00000009080706A0A1A2A3A4A5
TL 80
A  0001020304050607
PT 08090A0B0C0D0E0F101112131415161718191A1B1C1D1E
CT 00010203040506070135D1B2C95F41D5D1D4FEC185D166B8094E999DFED96C048C56602C97ACBB7490
M  E
K  C0C1C2C3C4C5C6C7C8C9CACBCCCDCECF
N  0000000A090807A0A1A2A3A4A5
TL 80
A  0001020304050607
PT 08090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F
CT 00010203040506077B75399AC0831DD2F0BBD75879A2FD8F6CAE6B6CD9B7DB24C17B4433F434963F34B4
M  E
K  C0C1C2C3C4C5C6C7C8C9CACBCCCDCECF
N  0000000B0A0908A0A1A2A3A4A5
TL 80
A  0001020304050607
PT 08090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F20
CT 000102030405060782531A60CC24945A4B8279181AB5C84DF21CE7F9B73F42E197EA9C07E56B5EB17E5F4E
M  E
K  C0C1C2C3C4C5C6C7C8C9CACBCCCDCECF
N  0000000C0B0A09A0A1A2A3A4A5
A  000102030405060708090A0B
TL 80
PT 0C0D0E0F101112131415161718191A1B1C1D1E
CT 000102030405060708090A0B07342594157785152B074098330ABB141B947B566AA9406B4D999988DD
M  E
K  C0C1C2C3C4C5C6C7C8C9CACBCCCDCECF
N  0000000D0C0B0AA0A1A2A3A4A5
TL 80
A  000102030405060708090A0B
PT 0C0D0E0F101112131415161718191A1B1C1D1E1F
CT 000102030405060708090A0B676BB20380B0E301E8AB79590A396DA78B834934F53AA2E9107A8B6C022C
M  E
K  C0C1C2C3C4C5C6C7C8C9CACBCCCDCECF
N  0000000E0D0C0BA0A1A2A3A4A5
TL 80
A  000102030405060708090A0B
PT 0C0D0E0F101112131415161718191A1B1C1D1E1F20
CT 000102030405060708090A0BC0FFA0D6F05BDB67F24D43A4338D2AA4BED7B20E43CD1AA31662E7AD65D6DB
M  E
K  D7828D13B2B0BDC325A76236DF93CC6B
N  00412B4EA9CDBE3C9696766CFA
TL 64
A  0BE1A88BACE018B1

t/03-rfc3610.t  view on Meta::CPAN

CT 74A0EBC9069F5B375810E6FD25874022E80361A478E3E9CF484AB04F447EFFF6F0A477CC2FC9BF548944
M  E
K  D7828D13B2B0BDC325A76236DF93CC6B
N  0027CA0C7120BC3C9696766CFA
TL 80
A  44A3AA3AAE6475CA
PT A434A8E58500C6E41530538862D686EA9E81301B5AE4226BFA
CT 44A3AA3AAE6475CAF2BEED7BC5098E83FEB5B31608F8E29C38819A89C8E776F1544D4151A4ED3A8B87B9CE
M  E
K  D7828D13B2B0BDC325A76236DF93CC6B
N  005B8CCBCD9AF83C9696766CFA
TL 80
A  EC46BB63B02520C33C49FD70
PT B96B49E21D621741632875DB7F6C9243D2D7C2
CT EC46BB63B02520C33C49FD7031D750A09DA3ED7FDDD49A2032AABF17EC8EBF7D22C8088C666BE5C197
M  E
K  D7828D13B2B0BDC325A76236DF93CC6B
N  003EBE94044B9A3C9696766CFA
TL 80
A  47A65AC78B3D594227E85E71
PT E2FCFBB880442C731BF95167C8FFD7895E337076



( run in 0.687 second using v1.01-cache-2.11-cpan-e1769b4cff6 )