RC-6 шифр алгоритм (encryption)-ын тухай

url

RC-6 шифр алгоритм (encryption)-ын тухай


RC-6 алгоритм нь нууцлалын блок шифр алгоритм (block encryption algorithm). Анх RC-6 алгоритмыг Америкийн Үндэсний стандарчлалын газраас 1997 онд зарлагдсан Advanced Encryption Standard (AES) уралдаанд зориулан RSA лабораторт 1998 онд зохиосон. Уг уралдааны сүүлийн шатанд шалгарсан 5 алгоритм (Rijndeal, Mars, Serpent, Twofish, RC-6)-ын нэг нь RC-6 юм. Хэдийгээр уралдаанд Rijndeal алгоритм ялж AES гэж нэрлэгдсэнээр стандарт болон гарсан ч RC-6 алгоритм нь энгийн шинж чанар, хурдан гүйцэтгэлтэйгээрээ өнөөг хүртэл хэрэглээтэй, тодорхой аюулгүй байдлыг хангасан хэвээр байна.

Тухайлбал, MSOffice 2002, 2003 – файлын нууц үг хамгаалалт, мөн CryptoTools болон BestCrypt зэрэг нууцлагч програм хангамжуудад хэрэглэгддэг.

RC-6 алгоритмын бүтэц, аюулгүй байдлын талаар товч өгүүлье.

Блокын хэмжээ: 128 бит ( мэдээллийн 128 бит блок хэсгүүдэд ажилладаг гэсэн үг, энэ нь 32, 64 бит байж болно. Гэхдээ нийтийн хэрэглээнд 128 бит блок хэмжэээтэйг хэрэглэдэг.)

Түлхүүрийн хэмжээ: 128, 192, 256 бит (ерөнхийдөө, алгоритмын бүтцийн хувьд 2048 бит хүртэлх хэмжээтэй түлхүүрийг сонгох боломжтой байдлаар зохиогдсон.)

Үеийн тоо: 20 үе. (Нэг блок буюу 128 бит мэдээллийг 20 үе (раунд) алхмаар шифрлэлт /encryption/ гүйцэтгэдэг.)

Блок шифр алгоритм учраас блок алгоритмуудын үйлдлийн нийтлэг моод /mode/-уудыг /ECB, CBC, OFB, CFB, CTR, G-CTR/ хэрэглэж болно. CTR mode нь блок шифр алгоритмын аюулгүй моодын нэг юм. RC-6 алгоритмын хувьд CryptoTools болон Bestcrypt зэрэг шифрлэгч програм хангамжуудад CTR, XTS, LRW mode-уудыг түлхүү ашигладаг.

Шифрлэлт (Encryption): RC-6 нэг үеийн бүтэц (20 үе ижил зарчмаар гүйцэтгэнэ)

Input: Untitled

Plaintext stored in four w=32-bit input registers A;B;C;D

Number r=20 of rounds

32-bit round keys S[0; : : : ; 2r + 3]

Output:

Ciphertext stored in A;B;C;D

Procedure:

B = B + S[0]

D = D + S[1]

for i = 1 to r do

{

t = (B x (2B + 1))<<<lg w

u = (D x (2D + 1))<<<lg w

A = ((A xor t)<<<u) + S[2i]

C = ((C xor u)<<<t) + S[2i+ 1]

(A,B,C,D) = (B,C,D,A)

}

A = A + S[2r + 2]

C = C + S[2r + 3]

Гүйцэтгэл:

CPU cycle /Operation [200 Mhz processor] Operation/Second [200 Mhz]

Java Borland C Assembly Java Borland C Assembly
Key Setup 110000 2300 1108 Key Setup 1820 86956 180500
Encryption 16200 616 254 Encryption 12300 325000 787000
Decryption 16500 566 254 Decryption 12100 353000 788000


Шифрлэх хурд
(encryption rate) [Megabits/sec]

Untitled1

Encryption 1.57 41.5 100.8

Decryption 1.55 45.2 100.8

On 8 bit processor

Intel MCS51 ( 1 Mhz clock )

Encrypt/decrypt at 9.2 Kbits/second (13535 cycles/block)

Key setup in 27 milliseconds /Only 176 bytes needed for table of round keys./

256 байтаас их RAM-тай смарт картад тохирдог.

Аюулгүй байдал:

Бүх боломжит түлхүүрийг хайх буюу brute-force довтолгоонд /128, 192, 256 бит түлхүүртэй/ 2128 – 2256 нарийвлал шаардагдах учраас өнөөгийн хэмжээнд боломжгүй гэж үздэг.

Бусад нарийвчилсан довтолгоо /криптоанализ/-ны хувьд үнэлгээг сонирхоё.

128 бит түлхүүрийн хувьд довтолгооны үзүүлэлт:

Үеийн тоо

Довтолгоо

8

12

16

20

24

Дифференциал криптоанализ /довтолгоо/

256

2117

2190

2238

2299

Шугаман криптоанализ /довтолгоо/

247

283

2119

2155

2191

Эндээс харахад 20 үеээс дээш үе гүйцэтгэдэг, 128-аас их бит түлхүүрийн урттай RC-6 алгоритм нь өнөөгийн түвшинд аюулгүй гэж үзэж болно. Өнөөгийн байдлаар RC-6 алгоритмыг бүрэн тайлсан /эвдсэн/ асуудал нийтэд гараагүй байна, стандарт хэрэглээний технологийн хувьд тайлах боломж одоогоор боломжгүй. Магадгүй хүчирхэг орнууд технологийн хүчээр 128 бит түлхүүртэй зэргийг тайлж байхыг үгүйсгэх аргагүй юм.

AES vs RC-6

Advanced encryption standard уралдааны эцсийн шалгаруулалтад тухайн үзүүлэлтүүдэд 1-3 оноог өгч дүгнэсэн. Ялагч AES алгоритмтай харьцуулсан үнэлгээ.

General Security Implementation difficulty Software performance Hardware performance Smart card performance Design Features
AES(Rijndeal)

2

3

3

3

3

2

RC-6

2

1

2

1

2

1

AES алгоритмын хувьд 8 бит платформ болон техник хангамж гүйцэтгэл илүү байсан. Харин RC-6 алгоритм нь /ARMs, PENTIUM II,PRO,III AND POWER PC, ADVANCE PROCESSOR, JAVA PLATFORM, CODE SIZE AND MEMORY REQUIREMENTS/ 32 бит гүйцэтгэлд илүү, 64 бит гүйцэтгэлд учир дутагдалтай байсан. Мөн түлхүүрийн итераци буюу анхны түлхүүрээс үеийн дэд түлхүүрүүдийг үүсгэх арга нь AES илүү нарийвлал гүйцэтгэл сайн.

Өнөөдөр AES алгоритмыг нийтийн хэрэглээнд найдвартайд тооцож дэлхий нийтэд хэрэглэж байна. Гэхдээ технологи хурдтай хөгжиж буй өнөөгийн үед AES 128 бит түлхүүртэй нь тийм ч найдвартайд тооцогдохгүй болж байгаа билээ.

RC-6 алгоритмын шифрлэлт болон шифр тайлалтын кодуудыг дараах линкээр орж сонирхоно уу.

http://www.codeproject.com/Articles/2545/RC6-encryption-and-decryption

᠌Хэрэглэгчийн картын мэдээлэл хулгайлах шинэ вирус илэрчээ

᠌Хэрэглэгчийн картын мэдээлэл хулгайлах шинэ вирус илэрчээ

Жижиглэн худалдаа, рестораны үйл ажиллагаа болон өөрсдийн бүх төрлийн бизнест PoS (Point-of-sale…

Эрин зууны алдарт тагнуулч Жон Уокер

Пит Эрли – Америкийн сэтгүүлч, зохиолч. Тэрээр зөвлөлтийн тагнуулын албанд 18 гаруй…

Израйл Биткойныг мөнгөн хөрөнгөтэй адилтган үзэж татвар ногдуулна

Израйл Биткойныг мөнгөн хөрөнгөтэй адилтган үзэж татвар ногдуулна

Израйлын татварын газраас  Биткойныг мөнгөн хөрөнгөтэй адилтган үзэж зохих хэмжээний татвар ноогдуулах…

САНАЛ АСУУЛГА

Таны бодлоор ямар төрлийн криптографи крипто-тэсвэр сайтай байдаг вэ?

Үр дүн харах

Loading ... Loading ...

СҮҮЛД НЭМЭГДСЭН

Зочин

  • 273Энэ нийтлэлд :
  • 99676Нийт зочилсон:
  • 27Өнөөдөр:
  • 2Одоо байгаа: