Comments (3)
Hi @GeorgeLyon,
Thanks for your interest in libecc. Have you found the reason behind this behaviour and consider the issue closed?
Regards,
Ryad
from libecc.
No, but I found another thread to pull on. I will reopen with new information when I do. Sorry for being undercommunicative
from libecc.
I found the fix, the issue was on my end but arose from a bit of confusion on the API level. Some pointer arguments to various ec_params
fields (like ec_curve
for prj_pt_init
) are not only used for initialization, but also stored in the struct
and thus must be valid for the entire duration of time that the value is in use. Normally, this isn't an issue (because when do ec_params
go away?) but Swift's withUnsafePointer(to:,_:)
only guarantees the validity of the pointer for the execution of the provided closure.
The local/global distinction was a red herring, since I was using the global ec_params
from multiple code locations (and thus multiple invocations of withUnsafePointer(to:,_:)
) but the local test happened entirely in a single invocation. The hex diff was also a red herring, since the wlen
field is a single byte and any padding was free to contain junk (likely because of a Swift's interpretation of C structs) 7ffeefbfc250
and 7ffeefbf8ec8
are both actually 4 with some junk bytes on the end.
If you are interested in how I'm using this library, my code is available at https://github.com/GeorgeLyon/OPAQUE
from libecc.
Related Issues (20)
- EdDSA and new curves HOT 5
- Minerva vulnerability? HOT 6
- rand does not include Wincrypt.h HOT 1
- The second g should be a 0 HOT 1
- functions with too much stack usage HOT 5
- conversion from 'word_t' to 'u8', possible loss of data HOT 2
- ECRDSA fuzzing mode bugfix
- Signature function's "help" function is incorrect HOT 1
- secp256k1 HOT 2
- Am I allowed to include the source of this in a project with a GPLv2 license? HOT 2
- Doubt in generate a Signature isong ECDSA brainpool method HOT 7
- Documentation HOT 2
- Error compilation example, overflow HOT 3
- Unable to sign file with the example code from README HOT 2
- prj_pt_monty.c is missing HOT 5
- Support generating random numbers from an entropy buffer HOT 2
- Conflicting type for size_t and ssize_t
- conflicting types for βuint64_tβ HOT 2
- How to transform 'toy' examples to production example ? HOT 5
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 libecc.