Vissza

9. labor, digitális aláírások


1. Generáljunk véletlenszerűen egy 2048 bites RSA kulcsot, majd ezt a kulcsot felhasználva határozzuk meg egy tetszőleges bináris állomány digitális aláírását a probabilisztikus RSA aláírási sémával egyszer appendix módban, majd recovery módban alkalmazva a sémát. Hasonlítsuk össze a kapott aláírások hosszát, melyik esetben lesz nagyobb, illetve mennyivel lesz nagyobb a kapott aláírási érték? Mit állapíthatunk meg, ha ugyanarra a bementre, ugyanazzal a kulccsal ismételten (legalább kétszer) meghatározzuk a digitális aláírás értékét?

2. Adott a sign_VLCs.txt állomány amelyben több érték-pár található, amelyek közül az egyik pár a vlc*.exe állomány DSA digitális aláírásának felel meg (az érték-párok esetében az első érték a B, a második a c). Írjunk programot, amely megmondja, hogy melyik a megfelelő digitális aláírás ezek közül, ahol az aláíráshoz tartozó nyilvános kulcsok letölthetőek a key_VLC.txt állományból. A key_VLC.txt-ben az értékek sorrendje a következő: p, q, g, A. A alkalmazott hash függvény az SHA-1 volt.

Útmutatás: az SHA által generált H0, H1, H2, H3, H4 32 bites értékeket írjuk fel 2160-as számrendszerbe, a következőképpen:  

H0 · 2128 + H1 · 296 + H2 · 264 + H3 · 232 +  H4.

3. A fel_signatureECDSA.txt minden sorában egy aláírt érték található der formátumban (https://www.ssl.com/guide/pem-der-crt-and-cer-x-509-encodings-and-conversions/). A fel_public_ecdsa.der a publikus kulcsot tartalmazza, amely fips-186-3 módban volt létrehozva. Határozzuk meg, hogy melyik aláírt érték felel meg a Kriptografia es informaciobiztonsag 2024 aprilis szövegnek, ahol az aláírást ECDSA-val (Elliptic Curve Digital Signature Algorithm) végezték a szöveg hash értéke felett. Az alkalmazott görbe a P256, a hash függvény pedig az SHA-512 volt.

4. Adott egy-egy állomány, és a sign*.txt-ben az állományhoz tartozó DSA digitális aláírás. Vizsgáljuk meg, hogy melyik esetben hiteles az aláírás. A sign*.txt-ben az első érték a B, a második a c. A public_key*.txt-ben az értékek sorrendje a következő: p, q, g, A. A alkalmazott hash függvény az SHA-1 volt.

a. file1.pdf     sign1.txt     public_key1.tx
b. file2.pdf     sign2.txt     public_key2.txt

Plusz adatok:
file1.pdf hash: 362...653
file2.pdf hash: 101...742