Jump to content

KCDSA

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by 194.6.174.10 (talk) at 11:43, 5 October 2016 (Confusing domain parameters: it's g that must be in GF(p), not q.). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

KCDSA (Korean Certificate-based Digital Signature Algorithm) is a digital signature algorithm created by a team led by the Korea Internet & Security Agency (KISA). It is an ElGamal variant, similar to the Digital Signature Algorithm and GOST R 34.10-94. The standard algorithm is implemented over , but an elliptic curve variant (EC-KCDSA) is also specified.

KCDSA requires a collision-resistant cryptographic hash function that can produce a variable-sized output (from 128 to 256 bits, in 32-bit increments). HAS-160, another Korean standard, is the suggested choice.

Domain parameters

  • : a large prime such that for .
  • : a prime factor of such that for .
  • : a base element of order in .

User parameters

  • : signer's private signature key such that .
  • : signer's public verification key computed by where .
  • : a hash-value of Cert Data, i.e., .

Signing

  • Signer randomly picks an integer and computes
  • Then computes the first part:
  • Then computes the second part:
  • The signature is

Verifying

  • Verifier computes
  • Then he checks if