Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ASN1* : Provably Correct Non-Malleable Parsing for ASN.1 DER #66

Merged
merged 101 commits into from
Oct 15, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
101 commits
Select commit Hold shift + click to select a range
d60a1a3
ASN1 Kinds
Jul 1, 2021
77e9708
Basic pipeline for ASN1 Boolean
Jul 17, 2021
3bd107a
Updating ASN1.Base.fst
FTRobbin Aug 24, 2021
843fd1b
Choice parser and Sequence in Base
FVRobbin Aug 27, 2021
d7effa0
Spec.Sequence in progress
FVRobbin Oct 8, 2021
b7a1a35
Defaultable combinator
FVRobbin Oct 19, 2021
2d78010
Sequence done (but barely readable)
FVRobbin Nov 2, 2021
dae81a0
ASN1 as_parser interpreter
FTRobbin Mar 7, 2022
181a659
Merge branch 'master' into haobin_x509_working
FTRobbin Mar 7, 2022
9faac16
Merge branch 'master' into haobin_x509_working
FTRobbin Mar 7, 2022
871c7d9
Using vlgen_weak
FTRobbin Mar 7, 2022
470cecc
Merge branch 'taramana_tot_parsers' into haobin_x509_working
FTRobbin Mar 17, 2022
3414d32
Fix after merging with tanamara_tot_parsers
FTRobbin Mar 17, 2022
1fdc6a0
Temp2
FTRobbin Mar 22, 2022
706be96
merging master in
nikswamy Apr 19, 2022
d223891
take change from master
nikswamy Apr 19, 2022
e17c4a5
fixes to ASN1 makinefile
nikswamy Apr 19, 2022
8ea6815
Temp
FTRobbin Apr 21, 2022
d58c4bc
Merge branch 'haobin_x509_working' of github.com:project-everest/quac…
FTRobbin Apr 21, 2022
a554562
asn1_k example
FTRobbin Apr 21, 2022
a4b815e
Minor
FTRobbin Apr 21, 2022
12d7789
Added BITSTRING and OCTETSTRING terminal parsers
FTRobbin Apr 26, 2022
1fb0212
NULL and minor
FTRobbin Apr 26, 2022
6bdf370
NULL
FTRobbin Apr 26, 2022
76f3fc8
IdentifierU32 Spec
FTRobbin Jun 28, 2022
80fe231
OIDU32
FTRobbin Jul 1, 2022
e722ac5
Merge branch 'taramana_tot_parsers' of github.com:project-everest/qua…
tahina-pro Jul 7, 2022
baeaa27
WIP integers
tahina-pro Jul 7, 2022
9863690
integers: sanity-check OK
tahina-pro Jul 7, 2022
e0851ed
integers: simplify unicity proofs
tahina-pro Jul 7, 2022
9b7426c
integers: parsers
tahina-pro Jul 7, 2022
ce9a841
integers: serializers
tahina-pro Jul 7, 2022
c092b6a
Automata Debug
FTRobbin Jul 25, 2022
27a4e2f
Merge branch 'haobin_x509_working' of github.com:project-everest/quac…
FTRobbin Jul 25, 2022
fd9aa38
Automata
FTRobbin Jul 25, 2022
96fb3a4
X509 Template
FTRobbin Jul 29, 2022
62af5bb
parse_int32
tahina-pro Jul 29, 2022
ea79288
parse_untagged_int32
tahina-pro Jul 29, 2022
1a354ac
parse_untagged integer parsers consume at least 1 byte
tahina-pro Jul 29, 2022
f93ada1
X509 Template and Terminals
FTRobbin Aug 3, 2022
9580559
ANY
FTRobbin Aug 3, 2022
61ea235
Time (Hack)
FTRobbin Aug 4, 2022
dba8b76
Refined Terminals & Open Any & Fix Choice
FTRobbin Aug 5, 2022
12381fb
Quick hacks
FTRobbin Aug 8, 2022
03916ef
Quick hack2
FTRobbin Aug 8, 2022
b6c71e0
compiling X509 to OCaml
nikswamy Aug 9, 2022
c6cb434
rename out to ocaml
nikswamy Aug 9, 2022
a1a5766
remove fstar-tactics-lib from the deps; runs with parsing failures on…
nikswamy Aug 10, 2022
9c69a83
X.509 v3 but technical debts
FTRobbin Aug 10, 2022
099c352
merging in haobin_x509_working
nikswamy Aug 10, 2022
f68c4a9
parse_debug, print_debug
tahina-pro Aug 10, 2022
57854c9
update OCAMLPATH in ocaml/Makefile
tahina-pro Aug 10, 2022
9a2769e
try to use parse_debug
tahina-pro Aug 10, 2022
79dec24
X509 spec updates
FTRobbin Aug 10, 2022
1cf46e8
Merge remote-tracking branch 'origin/nik_x509' into haobin_x509_working
FTRobbin Aug 10, 2022
90ae854
Change int to unbounded, typo in Base and BIT STRING
FTRobbin Aug 10, 2022
7acfc37
Revert "Merge remote-tracking branch 'origin/nik_x509' into haobin_x5…
FTRobbin Aug 10, 2022
f90dfeb
Fix Any
FTRobbin Aug 10, 2022
c107e2f
added support for more crypto
FTRobbin Aug 12, 2022
705c25b
mostly backward compatibility
FTRobbin Aug 12, 2022
03c36c1
Fixing one seq proof
FTRobbin Aug 12, 2022
84ea6d7
Generalized Any, ASN1 Syntax
FTRobbin Aug 24, 2022
ffb76c6
X509 spec with new syntax, debug option
FTRobbin Aug 26, 2022
96a4feb
Merge branch '_taramana_tot_parsers_revert' into taramana_x509_working
tahina-pro Aug 29, 2022
93a6155
Merge branch 'taramana_tot_parsers' of github.com:project-everest/qua…
tahina-pro Aug 30, 2022
b576378
adapt ASN.1 to new Tot parsers
tahina-pro Aug 30, 2022
2d439d7
add ASN.1 test to CI
tahina-pro Aug 30, 2022
c397ca5
(TEMP) use F* branch nik_misc
tahina-pro Aug 30, 2022
f18b5a1
use stdlib file operations instead of Jane Street's core
tahina-pro Aug 30, 2022
44e3920
Revert "(TEMP) use F* branch nik_misc"
tahina-pro Sep 2, 2022
dba560e
Merge branch 'taramana_x509_working' into haobin_x509_working
tahina-pro Sep 2, 2022
3dad81b
Merge branch 'master' of github.com:project-everest/quackyducky into …
tahina-pro Sep 6, 2022
0b80c5c
parse_byte_sorted_list
tahina-pro Sep 8, 2022
47bc102
parse_asn1_set_of; change type of SET_OF
tahina-pro Sep 8, 2022
ad95128
Save
FTRobbin Sep 8, 2022
f87e3a4
Merge branch 'taramana_asn1_set_of' of github.com:project-everest/qua…
FTRobbin Sep 8, 2022
bc39d7b
Updates
FTRobbin Sep 21, 2022
44f3ef3
Evaluation scripts
FTRobbin Sep 21, 2022
c0b1450
Merge branch 'master' of github.com:project-everest/quackyducky into …
tahina-pro Sep 21, 2022
240fd22
Renaming
FTRobbin Sep 21, 2022
08e25d9
Merge branch 'haobin_x509_working' of github.com:project-everest/quac…
FTRobbin Sep 21, 2022
cb74f2e
CRL
FTRobbin Sep 21, 2022
d07a802
package and Dockerfile
tahina-pro Sep 21, 2022
17ecc46
move Defaultable to ASN1
tahina-pro Sep 22, 2022
c778bea
rlimit
tahina-pro Sep 22, 2022
eaf44f5
update README
tahina-pro Sep 22, 2022
409127e
anon
tahina-pro Sep 22, 2022
b2832f2
NO_INTERACTIVE may be empty
tahina-pro Sep 22, 2022
9a8fc05
CRL changes
FTRobbin Sep 22, 2022
95f04c6
Merge branch 'haobin_x509_working' of github.com:project-everest/quac…
FTRobbin Sep 22, 2022
474032a
Updated dataset
FTRobbin Sep 22, 2022
f6ed698
fix eval Makefile
tahina-pro Sep 22, 2022
ecb7cf2
run.sh is a Bash script
tahina-pro Sep 22, 2022
8305fdf
Merge remote-tracking branch 'origin/master' into haobin_x509_working
nikswamy Mar 28, 2023
9f77c0d
Starting to upgrade this branch: disable positivity checks for now
nikswamy Mar 28, 2023
8385596
adapt ASN.1 test to new F* OCaml library layout
tahina-pro Mar 28, 2023
75204e8
fixing definitions to be strictly positive (ASN1.Base.fst restored ..…
nikswamy Mar 29, 2023
8c20b08
Merge branch 'master' of github.com:project-everest/everparse into ha…
tahina-pro Apr 10, 2023
65b3595
Update ASN1.Spec.Interpreter.fst with converters in ASN1.Base
Black-Kamous Oct 10, 2024
3aacd5c
merge in master
nikswamy Oct 14, 2024
bed037c
restore ASN.1 proofs
nikswamy Oct 14, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 6 additions & 3 deletions EverParse.fst.config.json
Original file line number Diff line number Diff line change
@@ -1,16 +1,19 @@
{
"fstar_exe": "fstar.exe",
"options": [
"--max_fuel", "0",
"--initial_fuel", "0",
"--max_fuel", "2",
"--initial_ifuel", "2",
"--max_ifuel", "2",
"--initial_ifuel", "2"
],
"include_dirs": [
"./src/lowparse",
"./src/lowparse",
"${KRML_HOME}/krmllib",
"${KRML_HOME}/krmllib/obj",
"./src/3d",
"./src/3d/prelude"
"./src/3d/prelude",
"./src/ASN1"
]
}

12 changes: 9 additions & 3 deletions Makefile
Original file line number Diff line number Diff line change
@@ -1,11 +1,14 @@
all: quackyducky lowparse 3d
all: quackyducky lowparse 3d asn1

lowparse:
+$(MAKE) -C src/lowparse

3d: lowparse
+$(MAKE) -C src/3d

asn1: lowparse
+$(MAKE) -C src/ASN1 verify

quackyducky:
+$(MAKE) -C src/qd

Expand All @@ -25,6 +28,9 @@ lowparse-unit-test: lowparse

3d-test: 3d-unit-test 3d-doc-test

asn1-test: asn1
+$(MAKE) -C src/ASN1 test

lowparse-bitfields-test: lowparse
+$(MAKE) -C tests/bitfields

Expand All @@ -44,7 +50,7 @@ quackyducky-sample0-test: quackyducky lowparse

quackyducky-test: quackyducky-unit-test quackyducky-sample-test quackyducky-sample0-test quackyducky-sample-low-test

test: all lowparse-test quackyducky-test 3d-test
test: all lowparse-test quackyducky-test 3d-test asn1-test

ci: test

Expand All @@ -60,7 +66,7 @@ clean-quackyducky:
clean: clean-3d clean-lowparse clean-quackyducky
rm -rf bin

.PHONY: all gen verify test gen-test clean quackyducky lowparse lowparse-test quackyducky-test lowparse-fstar-test quackyducky-sample-test quackyducky-sample0-test quackyducky-unit-test package 3d 3d-test lowparse-unit-test lowparse-bitfields-test release everparse 3d-unit-test 3d-doc-test ci clean-3d clean-lowparse clean-quackyducky
.PHONY: all gen verify test gen-test clean quackyducky lowparse lowparse-test quackyducky-test lowparse-fstar-test quackyducky-sample-test quackyducky-sample0-test quackyducky-unit-test package 3d 3d-test lowparse-unit-test lowparse-bitfields-test release everparse 3d-unit-test 3d-doc-test ci clean-3d clean-lowparse clean-quackyducky asn1 asn1-test

release:
+src/package/release.sh
Expand Down
1 change: 1 addition & 0 deletions src/ASN1/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
*.checked
Loading
Loading