- Why it's acceptable for Let's Encrypt's root to be sha-1 signed and why root certificates are exempt from SHA1 sunsetting: https://community.letsencrypt.org/t/sha-1-signed-certificate-in-chain/24897/2
- Currently Let’s Encrypt only signs end-entity certificates with RSA intermediates. Let’s Encrypt will generate an ECDSA root and intermediates [in the future] which can be used to sign end-entity certificates [ref].
- The benefit of an ECDSA authentication key (over RSA) is speed.
- RSA don't scale very well as you increase bit size compared to ECDSA [ref: Section 1.1]
- You should only support suites that use ECDHE and DHE as they offer Perfect Forward Secrecy. How to read a cipher suite [ref]:
TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256 --------------------------------------- TLS -
Current estimates for bruteforcing modern encryption algorithms
- 2128/262.117 (Bitcoin hashrate)=265.883 seconds
- 2.158 x 1012 years
- 156.4 times the age of the universe
- Uses the current Bitcoin hashrate (262.117) as the fastest parallel computer currently available (using ASICs the fastest hardware currently available)*
- [Security Level] is typically equal to the key size of the cipher — equivalent to the complexity of a brute-force attack
python -m SimpleHTTPServer 8000
I hereby claim:
- I am nickscript0 on github.
- I am nickscript0 (https://keybase.io/nickscript0) on keybase.
- I have a public key ASDVmINbkT5Bkt1i6E5r2EFd9lcvw7R9OTQbq6dhikhBwAo
To claim this, I am signing this object:
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
""" | |
Was running into the following error with the new async await syntax, where the equivalent @asyncio.coroutine did not give an error. | |
But this has since resolved, liekly due to an import problem or library version: | |
... | |
loop.run_until_complete(hello_world()) | |
File "/usr/local/lib/python3.5/site-packages/asyncio-3.4.3-py3.5.egg/asyncio/base_events.py", line 296, in run_until_complete | |
future = tasks.async(future, loop=self) | |
File "/usr/local/lib/python3.5/site-packages/asyncio-3.4.3-py3.5.egg/asyncio/tasks.py", line 516, in async | |
raise TypeError('A Future or coroutine is required') |
NewerOlder