I’ve been very busy implementing cryptography code to support a range of devices, some of them quite old for the last couple of years. This has resulted in most of my coding being focused on C++ 1998 (at least one device supported nothing newer) and very simple C# for proof of concept code.
Now that work is winding down I’m looking at getting back up to speed on C++ 2011, 2017 and later features and some full featured C# coding.
I’m hoping that I’ll be doing more modern coding in both languages in the relatively near future. Going to make sure I get some coding done on the home front while things are relatively quiet and look for work related tasks where modern tools and techniques are good things.
Wrapping up the tail end of the tail end of the multicast encryption work here. VxWorks port is looking good and looking forward to new challenges. It has been an interesting three years getting this defined, implemented, handed off to the teams and wrapped up.
It has been a wild ride taking an early stage prototype and building it out to something that is deployable across a line of products. Adding to the challenge was a multicast protocol that is central to the functioning of the systems that isn’t similar enough to anything out there for there to be an off the shelf solution and devices that are low-spec enough that no modern public key solutions perform adequately.
I was surprised to realize how much of the design ended up being key management. The algorithm and packet packaging stuff tends to get most of the attention but making sure that keys are updated and that updates can happen seamlessly without creating coverage gaps (important with ICU monitors) gets quite involved.
Dealing with the issues of systems coming into and out of coverage and devices that are not on or not working properly during key rotation makes things even more of a challenge.
In the end I feel good about the solution and it appears to be rolling out relatively smoothly to the product teams for implementation. The heavy lifting was largely done last fall but tying up loose and and a new platform to target has kept me busy since then…
Engineering execution and creativity mixed for the best results…