-
Data: 2021-02-15 14:28:58
Temat: Algorytm AES
Od: Roman Tyczka <r...@h...you.spammer> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]Witam,
Nie znam Pythona, ale się trochę go zaczynam uczyć, bo potrzebuję nim
sprawdzić poprawność szyfrowania/deszyfrowania różnymi algorytmami
biblioteki w innym języku.
Napisałem krótki program, który za pomocą dwóch implementacji algorytmu
AES szyfruje i deszyfruje łańcuch tekstowy:
import binascii
import pyaes
from cryptography.hazmat.primitives.ciphers import Cipher, algorithms, modes
key = b'01234567012345670123456701234567'
iv = bytearray(16)
plaintext = ('Some short description with looooooooong '
'additional data like polish diacritical chars... łóżźćęół
and digits 0123456789')
encrypter = pyaes.Encrypter(pyaes.AESModeOfOperationCBC(key, iv.decode()))
ciphertext = encrypter.feed(plaintext.encode('utf_8'))
ciphertext += encrypter.feed()
print("Encrypted AES256'1:", binascii.hexlify(ciphertext).upper())
aes = pyaes.AESModeOfOperationCBC(key)
decrypter = pyaes.Decrypter(aes)
decrypt = decrypter.feed(ciphertext)
decrypt += decrypter.feed()
print('Decrypted:', decrypt.decode('utf_8'))
print()
iv = bytearray(16)
cipher = Cipher(algorithms.AES(key), modes.CBC(iv))
encryptor = cipher.encryptor()
ct = encryptor.update(plaintext.encode('utf_8')) + encryptor.finalize()
print("Encrypted AES256'2:", binascii.hexlify(ct).upper())
decryptor = cipher.decryptor()
dc = decryptor.update(ct) + decryptor.finalize()
print('Decrypted:', dc.decode('utf_8'))
Wyniki:
Encrypted AES256'1:
b'B623A479FC657E31F219287CD191075575B2FB56485D0C22E9
168A2BF2289C7165CDA67586A486E14115C754ABA158A84A8C3B
521E0DF87505D77649A8F1CB52A03D41E205849F28BCA2DE189A
9C65CDB648DBC9F7D49AF2F1704B491E9E2DE6FC357ADC8E1573
3394C3C75B45570AE77A2A6CB6CC4418A558A78313C0C16478A7
D61538B88B486BCAE89235D8FCEEB8'
Encrypted AES256'2:
b'B623A479FC657E31F219287CD191075575B2FB56485D0C22E9
168A2BF2289C7165CDA67586A486E14115C754ABA158A84A8C3B
521E0DF87505D77649A8F1CB52A03D41E205849F28BCA2DE189A
9C65CDB648DBC9F7D49AF2F1704B491E9E2DE6FC357ADC8E1573
3394C3C75B45570AE77A2A6CB6CC4418A558A78313C0C16478'
I teraz mam pytanie dlaczego szyfrogram pierwszej biblioteki jest o 16
bajtów dłuższy niż drugiej? Nie jest to initialization vector, bo ten
ustawiony jest na 16 zer. Z czego wynika i czym jest ta różnica?
Różnica jest na końcu i wygląda tak:
A7D61538B88B486BCAE89235D8FCEEB8
--
pzdr
Roman
Następne wpisy z tego wątku
- 15.02.21 16:19 Roman Tyczka
- 15.02.21 17:03 Maciej Sobczak
- 16.02.21 14:19 Roman Tyczka
- 23.02.21 10:03 Roman Tyczka
- 23.02.21 17:15 Maciej Sobczak
- 25.02.21 12:10 Roman Tyczka
- 25.02.21 16:38 Maciej Sobczak
Najnowsze wątki z tej grupy
- Grok zaczął nadużywać wulgaryzmów i wprost obrażać niektóre znane osoby
- Can you activate BMW 48V 10Ah Li-Ion battery, connecting to CAN-USB laptop interface ?
- We Wrocławiu ruszyła Odra 5, pierwszy w Polsce komputer kwantowy z nadprzewodzącymi kubitami
- Ada-Europe - AEiC 2025 early registration deadline imminent
- John Carmack twierdzi, że gdyby gry były optymalizowane, to wystarczyły by stare kompy
- Ada-Europe Int.Conf. Reliable Software Technologies, AEiC 2025
- Linuks od wer. 6.15 przestanie wspierać procesory 486 i będzie wymagać min. Pentium
- ,,Polski przemysł jest w stanie agonalnym" - podkreślił dobitnie, wskazując na brak zamówień.
- Rewolucja w debugowaniu!!! SI analizuje zrzuty pamięci systemu M$ Windows!!!
- Brednie w wiki - hasło Dehomag
- Perfidne ataki krakerów z KRLD na skrypciarzy JS i Pajton
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- U nas propagują modę na SI, a w Chinach naukowcy SI po kolei umierają w wieku 40-50lat
Najnowsze wątki
- 2025-07-18 celnicy pobili policjanta
- 2025-07-18 Warszawa => Technik IT - Konfiguracja i Wsparcie Sprzętowe <=
- 2025-07-18 Warszawa => Specjalista ds. Sprzętu IT i Wsparcia Technicznego <=
- 2025-07-18 Białystok => Kotlin Developer <=
- 2025-07-18 Warszawa => Sales Director (Cloud solutions) <=
- 2025-07-18 Spalinowa trauma
- 2025-07-18 Polska => Senior Key Account Manager <=
- 2025-07-18 Białystok => Programista Kotlin <=
- 2025-07-18 Szczecin => Key Account Manager IT <=
- 2025-07-18 Łódź => Programista Mainframe (z/OS, Assembler) <=
- 2025-07-18 Łódź => Mainframe (z/OS, Assembler) Developer <=
- 2025-07-18 Lublin => Delphi Programmer <=
- 2025-07-18 Lublin => Programista Delphi <=
- 2025-07-17 Grok zaczął nadużywać wulgaryzmów i wprost obrażać niektóre znane osoby
- 2025-07-17 Andrzej Duda ułaskawił Roberta Bąkiewicza od zarzutu zapchnięcia ze schodów aktywistki Babci Kasi