Spaces:
Runtime error
Runtime error
impor streamlit sebagai st | |
impor haslib | |
dari cryptography.hazmat.primitives mengimpor hash | |
dari cryptography.hazmat.primitives.asymmetric import ( | |
padding, rsa, utilitas | |
) | |
private_key = rsa.generate_private_key( | |
eksponen_publik= 65537 , | |
ukuran_kunci= 2048 , | |
) | |
st.menulis( """ | |
## Tanda Tangan Digital RSA🔐 | |
""" ) | |
input = st.text_input( 'Masukkan Teks' , 'Informatika UNRIYO' ) | |
prehashed_msg = hashlib.sha256( masukan .encode()).digest() | |
tanda tangan = private_key.sign( | |
prehashed_msg, | |
bantalan.PSS( | |
mgf=padding.MGF1(hashes.SHA256()), | |
salt_length=padding.PSS.MAX_LENGTH | |
), | |
utils.Prehashed(hashes.SHA256()) | |
) | |
st.write( "Tanda tangan digital :" , tanda tangan) | |
public_key = private_key.public_key() | |
coba : | |
kunci_publik.verifikasi( | |
tanda tangan, | |
prehashed_msg, | |
bantalan.PSS( | |
mgf=padding.MGF1(hash.SHA256()), | |
salt_length=padding.PSS.MAX_LENGTH | |
), | |
utils.Prehashed(hash.SHA256()) | |
) | |
st.write( 'Tanda tangan VALID' ) | |
kecuali Tanda Tangan Tidak Valid: | |
st.write( 'Tanda tangan INVALID' ) | |