TPM (Trusted Platform Module) is as useful for preventing real attackers as the TSA is at preventing real terrorists. The architecture is fundamentally flawed and most existing implementations are completely broken. I thought this argument was settled decades ago[1] when "trusted computing" was introduced mostly as a way to provide DRM and ownership capabilities to organizations. It has largely failed to impact the consumer market when it was introduced back in the early 2000s. However, recently there seems to be a movement by certain parties to reintroduce this failed product back to the market. Microsoft argues that in order to use Windows 11, you need TPM 2.0 compatible hardware because[2]:
The Trusted Platform Module(TPM) requirement ena
| matrix_size=3 | |
| ##Utility functions | |
| matrix_max=$(($matrix_size - 1)) | |
| function clamp() { | |
| n=$(($1 < 0 ? 0 : $1)) | |
| n=$(($n > $matrix_max ? $matrix_max : $n)) | |
| echo $n |
A Pen by Vlastimil Fiser on CodePen.
| If 2fa is enabled on github switch to ssh instead of https on linux | |
| 1. generate an ssh keypair on your linux box | |
| ssh-keygen -t {rsa|dsa} | |
| 2. add the public key to github: profile - settings - ssh keys | |
| 3. switch from https to ssh | |
| Check your repo remote: |
| // because http://lolengine.net/blog/2013/07/27/rgb-to-hsv-in-glsl is often down | |
| vec3 rgb2hsv(vec3 c) | |
| { | |
| vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0); | |
| vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g)); | |
| vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r)); | |
| float d = q.x - min(q.w, q.y); | |
| float e = 1.0e-10; |
(by @andrestaltz)
If you prefer to watch video tutorials with live-coding, then check out this series I recorded with the same contents as in this article: Egghead.io - Introduction to Reactive Programming.
