Comments (5)
Regarding claims:
I think we need to keep claims somehow (for the Objective Oracle). Maybe you meant that the approach to implement claims as done in tlspuffin-claims
will no longer be possible? Or do you actually mean that we will no longer be able to produce claims as defined in tlspufin/src/claims.rs
(and used in Put::register_claimer
)?
from tlspuffin.
Regarding the diagram: shouldn't the Wolfssl/OpenSSL bindings be removed?
from tlspuffin.
I think we need to keep claims somehow (for the Objective Oracle).
We definitely want to keep something that fulfills our goal. The issue with the tlspuffin-claims is that they currently depend on compile-time flags in tlspuffin/puffin. So they actually depend on certain symbols at compile time from the PUT. Ideally we would have one build of tlspuffin which we can then link to any PUT through just one interface.
So that is the challenge.
from tlspuffin.
Regarding the diagram: shouldn't the Wolfssl/OpenSSL bindings be removed?
I think that is to be discussed. Either can keep them or redo the work in plain C and go through the C-compatible PUT interface.
from tlspuffin.
Milestones
Step 1:
- write C interface for
put::Put
(without claims for now, so without the feature flag "claims") - write C bindings around OpenSSL that implements this interface (mimicking/translating to C the Rust code from
tlspuffin/src/openssl
) - add this new OpenSSL PUT as "C_PUT" to the TLS PUT registries (in
tlspuffin/src/put_registries.rs
) - build script for building tlspuffin+openssl (mimicking the build script written in Rust from
crates/openssl-src-111
)
(For the non-existent claims consider the symbols for claims as weak symbols.)
Step 2:
- build tlspuffin as a library TLSPUFFIN
- build a fresh, clean master openssl checkout as a library OPENSSL (without bindings then)
- build the openssl bindings as library OPENSSL_BIDINGS
- have a script linking the three together (the main is in tlspuffin already)
Step 3 (add feature flag "claims"):
- reuse C interface of what is a claim (for TLS) from
tlspuffin-claims/claim-interface.h
- amend the OpenSSL bindings to add those claims and the weak symbols
register_claimer
andderegister_claimer
from tlspuffin.
Related Issues (20)
- Could not compile `wolfssl` while building tlspuffin HOT 12
- Fuzz s2n-tls HOT 1
- Upgrade to LibAFL 0.10
- Coverage Evaluation HOT 13
- Verify and check ASAN usage (max 1 campaign in parallel with ASAN!) HOT 1
- Add a signed message for every public key?
- Discussion: When and how should transcripts be extracted (source modification vs. callbacks)
- Idea: Messages and OpaqueMessages are not compatible. Were they before the refactor?
- What of features were missing to discover the new CVEs?
- Document Rational for changes
- tlspufifn is broken HOT 1
- Adjust CLAIM_MAX_AVAILABLE_CIPHERS for claim extraction
- Avoid SEGV when not registereing a claimer
- Move openssl-src submodule here HOT 1
- Investigate why determinism makes CDOS not work HOT 2
- Speed up CI by moving long running tasks in separate scheduled task HOT 1
- Revaluate removed debug asserts
- Rename function HOT 1
- Bit-level mutations through lazy bitstring replacements
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from tlspuffin.