Comments (3)
You need to be able to craft your own certificates.
Then you need to decide where to put the collisionblocks. Before that point you can freely choose the content of each certificate, after the collisionblocks they need to be the same.
For the rogue CA we put the collision blocks at the end of the certificate in a comment field.
For the web cert signed by a CA the format was very strict, so the collision blocks needed to be put in the public key field. We used a very long domain name to align the structures between the 2 certificates.
We then generated a 3-block chosen prefix collision using 215 PlayStations3.
Only after that, did we exploit the remaining bits of the public key to make it a complete modulus of which we knew the factorisation.
Note that it doesn't need to be a secure RSA key with two equal size random primes, you just need to be able to generate a signature that will be verified correctly.
from hashclash.
This is all public record and detailed in the our 25c3 talk and our CRYPTO 2009 paper.
from hashclash.
Many thanks, I'll read it!
from hashclash.
Related Issues (17)
- missing M4 files HOT 2
- Different Boost versions between static release and configuration HOT 2
- call to 'hw' is ambiguous HOT 2
- occasional crashes HOT 5
- Static macOS build releases HOT 13
- Question about chosen-prefix collision with strings. HOT 2
- Add a progress indicator on screen
- Chosen Prefix Collision requirement for matching prefix size HOT 2
- cpc.sh: let: k=: syntax error: operand expected (error token is "=") HOT 3
- Detectcoll doesn't detect UniColl with n=2 HOT 1
- Detectcoll doesn't provide message differential for textcoll. HOT 5
- Add support for SipHash128 with all-zero key HOT 13
- textcoll fails to complete because of an assertion HOT 4
- possible to have one byte difference for prefix in textcoll.sh? HOT 6
- Can't get "textcoll.sh" to finish HOT 9
- Implement prefix text collision attack in 2nd+ block? HOT 4
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 hashclash.