This Week In Security: Crosstalk, TLS Resumption, And Brave Shenanigans

Intel announced CrossTalk, a new side-channel attack that can leak data from CPU buffers. It’s the same story we’ve heard before. Bits of internal CPU state can be inferred by other processes. This attack is a bit different, in that it can leak data across CPU cores. Only a few CPU instructions are vulnerable, like RDRAND, RDSEEED, and EGETKEY. Those particular instructions matter, because they’re used in Intel’s Secure Enclave and OpenSSL, to name a couple of important examples.
Continue reading “This Week In Security: Crosstalk, TLS Resumption, And Brave Shenanigans”

Binary Math Tricks: Shifting To Divide By Ten Ain’t Easy

On small CPUs, you often don’t have a multiply or divide instruction. Of course, good programmers know that shifting right and left will multiply or divide by a power of two. But there are always cases where you need to use something that isn’t a power of two. Sometimes you can work it out for multiplication.

For example, multiplying by 10 is common when dealing with conversion between binary and decimal. But since 10n is equal to 8n+2n, you can express that as a bunch of left shift three times to multiply by eight, adding that value to your original value shifted left once to multiply by two.

But division is a different problem. n/10 does not equal n/8-n/2 or anything else simple like that. The other day a friend showed me a very convoluted snippet of code on Stack Overflow by user [realtime] that divides a number by 10 and wanted to know how it worked. It is pretty straightforward if you just stick with the math and I’ll show you what I mean in this post. Turns out the post referenced the venerable Hacker’s Delight book, which has a wealth of little tricks like this.

Continue reading “Binary Math Tricks: Shifting To Divide By Ten Ain’t Easy”

Hackaday Podcast 071: Measuring Micrometers, The Goldilocks Fit, Little Linear Motors, And 8-bit Games On ESP32

Hackaday editors Mike Szczys and Elliot Williams fan through a fantastic week of hacking. Most laser cutters try to go bigger, but there’s a minuscule one that shows off a raft of exotic components you’ll want in your bag of tricks. Speaking of tricks, this CNC scroll saw has kinematics the likes of which we’ve never seen before — worth a look just for the dance of polar v. Cartesian elements. We’ve been abusing printf() for decades, but it’s possible to run arbitrary operations just by calling this Turing-complete function. We wrap the week up with odes to low-cost laptops and precision measuring.

Take a look at the links below if you want to follow along, and as always, tell us what you think about this episode in the comments!

Direct download (60 MB or so.)

Continue reading “Hackaday Podcast 071: Measuring Micrometers, The Goldilocks Fit, Little Linear Motors, And 8-bit Games On ESP32”

Rolling Out A New Robot Arm

A lot of great scientific breakthroughs come through imitating nature, but technology often runs up against limits in certain areas. This is particularly evident in robotics, where it takes a lot of effort (and cost) to build a robot which can effectively manipulate heavy objects but not crush others which are more delicate. For that, a research group has looked outside of nature, developing a robotic grasper which uses omnidirectional wheels to grab various objects.

The robot hand is composed of three articulating fingers with fingertips which are able to actively manipulate the object that the hand is holding. With static fingertips, it is difficult to manipulate an object in the hand itself, but with the active surfaces at the fingertips it becomes easier to rotate the object without setting it down first or dropping it.

The project is much more than designing the robot hand itself, too. The robot uses calculated kinematics to manipulate the objects as well, but a second mode was also tried where the robot was able to “learn” how to handle the object it was given. The video linked below shows both modes in operation, with interesting results. If you prefer more biologically-inspired robot arms, though, there are always novel designs based on non-humans.

Continue reading “Rolling Out A New Robot Arm”

Now This Is A Maker’s PCB Shaker

Anyone who has ever etched their own PCB knows that the waiting is the hardest part. Dissolving copper in ferric chloride takes time, much like developing a Polaroid picture. And although you really should not shake a fresh Polaroid to speed up development, the PCB etching process thrives on agitation. Why wait an hour when you can build a simple PCB shaker and move on to drilling and/or filling in 10 minutes?

We love that [ASCAS] was probably able to build this without reaching past the the spare parts box and the recycling bin. There’s no Arduino or even a 555 — just a 12 VDC geared motor, a DC-DC buck converter, and an externalized pot to control the speed of the sloshing.

It’s hard to choose a favorite hack here between the hinge used to rock this electric seesaw and the crankshaft/armature [ASCAS] made from a sandwich spread lid and a Popsicle stick. Everything about this build is beautiful, including the build video after the break.

Did you know that unlike ferric chloride, copper chloride can be recharged and reused? Here’s a one-stop etching station that does just that.

Continue reading “Now This Is A Maker’s PCB Shaker”

Apollo 11 Trig Was Brief

In this day and age where a megabyte of memory isn’t a big deal, it is hard to recall when you had to conserve every byte of memory. If you are a student of such things, you might enjoy an annotated view of the Apollo 11 DSKY sine and cosine routines. Want to guess how many lines of code that takes? Try 35 for both.

Figuring out how it works takes a little knowledge of how the DSKY works and the number formats involved. Luckily, the site has a feature where you can click on the instructions and see comments and questions from other reviewers.

Continue reading “Apollo 11 Trig Was Brief”

Arduino Music Box Turns Stuffed Animal Into TV Personality

Childlike imagination is a wonderful thing. The ability to give life to inanimate objects and to pretend how they’re living their own life is precious, and not for nothing a successful story line in many movies. With the harsh facts or adulthood and reality coming for all of us eventually, it’s nice to see when some people never fully lose that as they get older. Even better when two find each other in life, like [er13k] and his girlfriend, who enjoy to joke about all the mischief their giant dog-shaped plush toy [Tobias] might secretly get into in their absence. The good thing about growing up on the other hand is the advanced technical opportunities at one’s disposal, which gave the imagined personality an actual face, and have it live inside an old CRT screen.

The initial idea was to just build a little music box as a gift, which beeps out [er13k]’s girlfriend’s favorite song with an Arduino on a speaker he salvaged from an old radio. But as things tend to go when you’re on a roll, he decided to make the gift even more personal. The result is still that music box, built in a 3D-printed case with a little piano that lights up the notes it plays, but in addition the Arduino now also displays a cartoon version of [Tobias] through composite video on an old TV. You can see for yourself in the video after the break how he goes through the day gifting flowers and drawings, and ponders about work and alternative career plans — adult problems are clearly universal.

Sure, the music box sound is a bit one-dimensional, but it’s nevertheless a highly thoughtful gift idea that triumphs with a peak personalization factor. If [er13k] ever wants to change the sound though, maybe there’s some inspiration in this drum machine we’ve seen just a few weeks ago, or this pocket sampler.

Continue reading “Arduino Music Box Turns Stuffed Animal Into TV Personality”