The State of Swift Static Analysis

Static analysis is an essential technique for ensuring delivery of quality and secure code throughout the SDLC. Since this type of analysis is performed without the need of a compiled binary, it means developers can analyze their code while it’s being written and checked in to source control.

Read More

Security-Analysis-Obfuscator-iOS

This is a quick informal analysis of the Obfuscator-iOS library which allows obfuscation of strings for Objective-C and Swift. It’s probably more of a tutorial than anything else and the methods presented here can be applied to any “security” library like this one. There are much faster ways to break this library but we’re going to be running under the following assumptions to make things difficult (despite their improbability):

Read More

Securing Strings in iOS Apps

Many applications rely on strings which contain potentially sensitive data for storing things such as URIs, tokens, keys and secrets. Many of these items are required for core app functionality and must be hardcoded in the source, they can be used as arguments for functions or stored as constants when re-used. Although hidden from the typical user, we can never make the assumption that these strings are safe.

Read More

Buddybuild Privacy Changes

Yesterday BuddyBuild sent out an email yesterday basically stating they are no longer collecting user data unless the users explicitly opt-in. This also means a new SDK and some big changes coming:

Read More

Using Keyboard Input in Xcode 9 Playgrounds

Xcode 9.0 makes keyboard input in playground Live Views almost impossible by not resizing the software keyboard based on the size of the window. The image below is the current behaviour of keyboard input.

Read More

iTerm2 Finder Droplet

Like most developers I spend alot of time in Terminal and recently switched back to iTerm2 in hopes of increasing productivity. Unfortunately iTerm doesn’t come with any Finder services to quickly launch into folders like Terminal. I find alot of applications will let you open a project folder in Finder but lack terminal support so I end up using this feature quite a bit.

Read More

HRV Analysis with iWatch?

Getting precise RR intervals requires a resolution which is much smaller than a duration of RR intervals (1/100s or 100Hz). ECG machines are able to get precise measurements like this, but the pulse width when using pulse oximeters is often much more than 100ms. This is because the PPG sensors on the iWatch measure blood flow in distant capillaries vs measuring electrical ECG pulses from the heart, leaving the shape of the pulse to be stretched in time. Analyzing HRV usually requires measurements with a resolution between 40-100Hz.

Read More