29. april 2003 - 18:41Der er
25 kommentarer og 1 løsning
blowfish forklaring
Hej hej.... ja her er problemet:
1. KEY EXPANSION converts a key of up to 448 bytes into several subkey 32-bit arrays: the permutation-array, denoted Pi (i=1,...18); and the string-array, denoted Si,j (i=1,...4) and (j=0,...255). 2. DATA ENCRYPTION consists of a FEISTEL FUNCTION, F(), iterated for 16 rounds. To encrypt, divide the initial plaintext into a left and right half, 32 bits apiece, denoted L0 and R0. Then for each i, i=1,...16: let Li be set equal to Li-1 ^ Pi; let Ri be set equal to F(Li) ^ Pi; then swap Li and Ri. Finally, swap Li and Ri (i.e., undo the 16th swap). Then: Let Rfinal be set equal to R16^P17; Let Lfinal be set equal to L16^P18; Finally, rejoin the right and left halves, denoted Lfinal and Rfinal. Decryption is the same as encryption, except that P1,... P18 are used in reverse order. Subkeys are calculated as follows:
1. Initialize P'1,... P'18, and then S'1,0,... S'4,255, in order, using the hexadecimal expansion of pi. 2. Obtain the secret-permutation array, P1,... P18, by letting Pi be set equal to P'i ^ Ki. 3. 4.
Er der nogen der kan oversætte eller rettere forklare? På forhånd tak!
Ikke det helt store... faktisk er det hovedsaglig fagudtrykkene jeg gerne vil habe gjort lidt mere forståelige, selvom jeg generelt godt kunne tænke mig en gennemløbbende forklaring...
Jeg vil ikke sige at jeg stiller mig totalt uforstående overfor indholdet, det er bare... øh... mindre klart >:)... det er til dels også fordi jeg ikke har tid til at sætte mig ind i dette, så jeg vælger den nemme (håber jeg) løsning...
Det lyder alletiders, og jeg er meget taknemmelig for du har lyst til at hjælpe mig... ofte springer folk bare et spørgsmål over hvis de ikke lige kan det på fingerspidserne (hvilket også er helt i orden det er ikke det)...
split X i X L og X R for i = 1 to 16 { X L = X L xor P i X R = F(X L) xor X R swap X L og X R } swap X L og X R X R = X R xor P 17 X L = X L xor P 18 combine X L og X R til X
Jeg kigger på det i løbbet af idag og imorgen... tak for hjælpen...
Jeg må dog med det samme indrømme at jeg ikke er helt med på xor funktionen... kan godt huske at ha´læst om den, men det er vidst et stykke tid siden...
Jeg ved ikke helt hvad du skal bruge Blowfish krypteringen til (?), men jeg kan fortælle dig at det er en af de mest sikre krypteringer der findes. Hvilket den 448 bit key jo siger en hel del om. Så vidt jeg ved er Blowfish også copyright'et. Så hvis jeg var dig ville jeg bruge TEA som kryptering. TEA (Tiny Encryption Algoritm) er public domain. TEA bruger en 128 bit key hvilket giver 2^128 (340282366900000000000000000000000000000000000000) muligheder for at finde den rigtige key. Det burde være rigeligt til hvad du nu skal have krypteret. Selve algoritmen kan du finde på nettet. Jeg har også hørt om TEA med en 256 bit key men den er jeg endnu ikke stødt på.
Iøvrigt kan man lave en meget simpel og temmlig svær kryptering ved hjælp af alm. XOR og nogle SHR og SHL. Håber det gav lidt mere hjælp ud over arne v's udemærkede forklaringer :-)
Undskyld det to så lang tid... men fik lige lidt travlt >:)
brhino > det var bare til et HTX teknologi projekt. Jeg havde fra starten af kigge lidt på RSA algoritmen, men det fortrød jeg hurtigt. Både fordi den med public key systemet ikke passede til mit behov, men også fordi den ærlig talt ikke var helt nem. Princippet forstod jeg godt, men koden var lidt træls. Så var det jo jeg faldt over Blowfish, som så lidt mere tilgængelig ud. Men ja nu er jeg sådan se færdig...
Så jeg vil bare sige tak for hjælpen
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.