Встречается на собеседованиях • сегодня

Что такое подпись в криптографии

Подпись в криптографии — это цифровой аналог рукописной подписи, используемый для подтверждения подлинности и целостности данных. Она создается с помощью закрытого ключа и может быть проверена соответствующим открытым ключом.

Основные свойства:

  • Аутентичность — подтверждает автора сообщения
  • Целостность — гарантирует, что данные не изменены
  • Неотрекаемость — автор не может отрицать подписание

Пример с использованием RSA в Python:

python
from cryptography.hazmat.primitives import hashes
from cryptography.hazmat.primitives.asymmetric import padding, rsa

# Генерация ключей
private_key = rsa.generate_private_key(public_exponent=65537, key_size=2048)
public_key = private_key.public_key()

# Создание подписи
message = b"Important message"
signature = private_key.sign(
    message,
    padding.PSS(
        mgf=padding.MGF1(hashes.SHA256()),
        salt_length=padding.PSS.MAX_LENGTH
    ),
    hashes.SHA256()
)

# Проверка подписи
try:
    public_key.verify(
        signature,
        message,
        padding.PSS(
            mgf=padding.MGF1(hashes.SHA256()),
            salt_length=padding.PSS.MAX_LENGTH
        ),
        hashes.SHA256()
    )
    print("Подпись верна")
except:
    print("Подпись недействительна")
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы