example for encoding data as ASN1 DER
This commit is contained in:
parent
449fcb93bb
commit
992320b67b
|
@ -46,7 +46,7 @@ category: Network
|
||||||
extra-source-files: CHANGELOG.md
|
extra-source-files: CHANGELOG.md
|
||||||
|
|
||||||
common deps
|
common deps
|
||||||
build-depends: base ^>=4.12.0.0, containers ^>=0.6.0.1, bytestring, utf8-string ^>=1.0.1.1, network ^>=2.8.0.1, time ^>=1.8.0.2, cmdargs ^>= 0.10, cryptonite ^>= 0.25, memory, binary-strict, async
|
build-depends: base ^>=4.12.0.0, containers ^>=0.6.0.1, bytestring, utf8-string ^>=1.0.1.1, network ^>=2.8.0.1, time ^>=1.8.0.2, cmdargs ^>= 0.10, cryptonite ^>= 0.25, memory, binary-strict, async, asn1-encoding, asn1-types, asn1-parse
|
||||||
ghc-options: -Wall
|
ghc-options: -Wall
|
||||||
|
|
||||||
|
|
||||||
|
|
18
Hash2Pub/src/asn1test.hs
Normal file
18
Hash2Pub/src/asn1test.hs
Normal file
|
@ -0,0 +1,18 @@
|
||||||
|
{-# LANGUAGE OverloadedStrings #-}
|
||||||
|
module Main where
|
||||||
|
|
||||||
|
import qualified Data.ASN1.Encoding as ASN1 -- asn1-encoding package
|
||||||
|
import qualified Data.ASN1.BinaryEncoding as ASN1
|
||||||
|
import qualified Data.ASN1.Types as ASN1 -- asn1-types package
|
||||||
|
|
||||||
|
-- import Hash2Pub.Fedichord
|
||||||
|
|
||||||
|
-- encoding values as ASN.1 types is done using Data.ASN1.Prim
|
||||||
|
someASN1 = ASN1.encodeASN1' ASN1.DER $ ASN1.Start ASN1.Sequence : ASN1.ASN1String (ASN1.asn1CharacterString ASN1.Visible domain) : ASN1.ASN1String (ASN1.asn1CharacterString ASN1.UTF8 unicode) : map ASN1.IntVal xs ++ [ASN1.End ASN1.Sequence]
|
||||||
|
where
|
||||||
|
domain = "domains.are.ascii.on.ly"
|
||||||
|
unicode = "Hähä, but unicode string!"
|
||||||
|
xs = [ 23, 42, 2342 ]
|
||||||
|
|
||||||
|
main = do
|
||||||
|
print someASN1
|
Loading…
Reference in a new issue