3

Can someone please provide a description of TCB algorithm?

Vladislav Rastrusny
  • 29,378
  • 23
  • 95
  • 156
  • Yes. Wikipedia doesn't have any. I didn't find anything in Google also. There are a lot of references to it on the net, but I saw precise description nowhere. There is a way to find out by for example taking TrueCrypt sources, but... I am not good in C++ and that may take too much time. – Vladislav Rastrusny May 31 '10 at 11:03

1 Answers1

2

My cryptographic skills are a little bit rusty - but IMHO, Tweaked Codebook = Tweakable Block Cipher.

It's basically ECB with a Tweak, that "patches" ECB's biggests flaws: identical plaintext blocks result in identical ciphertext (exposing your ciphertext to malicious substitution and showing data patterns).

With a plaintext message P, cut in n-bits blocks X1, X2, X3... Xi... Xn

  1. Xi (XOR) Tweak(i) -> CC
  2. Encrypt_function(CC) -> Ci

Depending on your implementation, your Tweak is generated using a function of your choice (taking your block number as a parameter). A very simple (unsecure?) one could be:

  • Tweak(i) = i

I'm not 100% OK with my answer; at least that's what I remember and that's what I get when looking at an extract of IEEE 1619-2007. I'd really like to read more on this!

Brian Clozel
  • 56,583
  • 15
  • 167
  • 176
  • I got one doc on implementation from the link you provided to WikiPedia: http://axelkenzo.ru/index.php?downloads=1619-2007-NIST-Submission.pdf It looks like it has some clues ;) – Vladislav Rastrusny May 31 '10 at 12:24
  • Yep. I didn't put this link in my answer - it seems like there's a copyright issue with this document (see page 1). Keep us updated! – Brian Clozel May 31 '10 at 12:50