Felhasználói eszközök

Eszközök a webhelyen


oktatas:programozas:algoritmusok:aes

Különbségek

A kiválasztott változat és az aktuális verzió közötti különbségek a következők.

Összehasonlító nézet linkje

Előző változat mindkét oldalonElőző változat
Következő változat
Előző változat
oktatas:programozas:algoritmusok:aes [2020/06/07 23:39] – [AES] adminoktatas:programozas:algoritmusok:aes [2023/08/20 23:31] (aktuális) – [AES] admin
Sor 4: Sor 4:
  
   * **Szerző:** Sallai András   * **Szerző:** Sallai András
-  * Copyright (c) Sallai András2014, 2020 +  * Copyright (c) 2014, Sallai András 
-  * Licenc: GNU Free Documentation License 1.3 +  * Szerkesztve: 2014, 2020 
-  * Web: http://szit.hu+  * Licenc: [[https://creativecommons.org/licenses/by-sa/4.0/|CC BY-SA 4.0]] 
 +  * Web: https://szit.hu 
 ===== Az AES algoritmusról ===== ===== Az AES algoritmusról =====
  
Sor 48: Sor 50:
  
  
 +===== Oszlopkeverés Perl nyelven =====
 +
 +<code perl oszlopMix.pl>
 +#!/usr/bin/perl
 +
 +my @bOszlop = ();
 +my @aOszlop = (0xd4, 0xbf, 0x5d, 0x30);
 +
 +@bOszlop[0] = 
 + &szoroz(0x2, @aOszlop[0]) ^ 
 + &szoroz(0x3, @aOszlop[1]) ^
 + &szoroz(0x1, @aOszlop[2]) ^ 
 + &szoroz(0x1, @aOszlop[3]);
 +
 +@bOszlop[1] =
 + &szoroz(0x1, @aOszlop[0]) ^
 + &szoroz(0x2, @aOszlop[1]) ^
 + &szoroz(0x3, @aOszlop[2]) ^
 + &szoroz(0x1, @aOszlop[3]);
 +
 +@bOszlop[2] =
 + &szoroz(0x1, @aOszlop[0]) ^
 + &szoroz(0x1, @aOszlop[1]) ^
 + &szoroz(0x2, @aOszlop[2]) ^
 + &szoroz(0x3, @aOszlop[3]);
 +
 +@bOszlop[3] =
 + &szoroz(0x3, @aOszlop[0]) ^
 + &szoroz(0x1, @aOszlop[1]) ^
 + &szoroz(0x1, @aOszlop[2]) ^
 + &szoroz(0x2, @aOszlop[3]);
 +
 +foreach $hexSzam (@bOszlop) {
 + printf("%02x\n",  $hexSzam);
 +}
 +
 +
 +sub szoroz {
 + $matrixElement = @_[0];
 + $szam = @_[1];
 +
 + if($matrixElement eq 1) {
 + return $szam;
 + }elsif($matrixElement eq 2) {
 + my $eltoltSzam = $szam << 1;
 + if($eltoltSzam> 0xff) {
 + $eltoltSzam = $eltoltSzam ^ 0x11b;
 + }
 + return $eltoltSzam;
 + }elsif($matrixElement eq 3) {
 + my $eltoltSzam = $szam << 1;
 + if($eltoltSzam > 0xff) {
 + $eltoltSzam = $eltoltSzam ^ 0x11b;
 + }
 + return $eltoltSzam ^ $szam;
 + }else {
 + print("Hiba! Rossz szorzó!\n");
 + }
 +}
 +
 +
 +</code>
  
oktatas/programozas/algoritmusok/aes.1591565942.txt.gz · Utolsó módosítás: 2020/06/07 23:39 szerkesztette: admin