I-Pizza allkirjastamise
tarbeks on kaupmehele tehtud kaks moodulit, "signeeri" ja "kontrolli".
Crypto lib'idest on kasutatud OpenSSL'i.
Täpsustused
alljärgnevale süntaksi kirjeldusele:
versioon
on string "008"
Andmete
all mõeldakse vastalt i-Pizza spetsifikaadile kokku liidetud andmeväljad
reavahetusteta stringi kujul.
Allkiri
on base64 kodeeringus allkirjastatavate andmete allkiri.
Võti
rsa x509 self-signed certificate pem formaadis või salajane võti
pem formaadis.
kontollimisel
tagasitulevad andmed:
"signeeri"
süntaks:
IN streami minevate
andmete süntaks:
versioon
; "008"
#
; separator eraldi real
andmed
; reavahetusteta string; iga välja ees on pikkus 3-kohalise numbrina;
näiteks:
009kriimsilm004karu006rebane0042000
#
; separator eraldi real
salajane
võti ;
#
salajase võtme pääsufraas
(kui ilma pääsufraasita, siis reavahetus)
#
(tühi rida)
OUT streamist tulevate
andmete süntaks:
versioon
; "008"
#
; separator eraldi real
andmed
; reavahetusteta string
# ;
separator eraldi real
allkiri
; base64
# ;
separator eraldi real
"kontrolli" süntaks:
IN streami minevate
andmete süntaks:
versioon
; "008"
#
; separator eraldi real
andmed
; reavahetusteta string
# ;
separator eraldi real
allkiri
; base64
# ;
separator eraldi real
allkirjastaja
avalik võti (sertifikaat) ;
#
OUT:
"OK", "NOT OK", "TECH"