Social Welfare for Kiwi Infotech

Security is always a "nice to have" feature but how does a busy business owner get it done?

It's virtually impossible for one person to do this type of military strength hacking job. The time and effort required is highly non-linear and almost impossible to predict.

It would be cool if the government would tell you if your website was insecure. But they'd prefer to keep the back door in case they need it later. Just kidding CERT has very useful advisories over at But they can only do so much.

Bug Bounty Programs != Complete Solution

At first, only the super large software companies like Google and Facebook can afford bug bounty programs, but today 93 companies are listed at

Not all companies with websites need super strong security like this. National state level quality network operations. But the citizens of the country would likely hope their government has a plan to protect it's own computers, and also a plan to protect those of important Infosec industries such as banking, finance, healthcare, legal aren't leaking huge quantities of data everywhere.

But it's not a complete solution - its an extreme solution for a super technical area actually - and perhaps not the first solution for medium sized business dabbling in hardening their networks.

False intrusion detection positives are a mega waste of time.

Bruce puts it nicely over at his page on the subject:

Here's an outsourcing idea: get rid of your fleet of delivery trucks, toss your packages out into the street, and offer a reward to anyone who successfully delivers a package. Sound like a good idea, or a recipe for disaster?

The reality is that it comes down to branding: if the brand would be harmed by being the victim of a really big hack or data breach, then it puts more effort in. This works pretty well for infosec products. And for the times when it doesn't, I'm not suggesting forcing anyone to start a bug bounty program.

People would still eat pizza at a joint which has a haxored network, but they might not want to visit a doctor or use a lawyer whos network was wide open, with a file servers leaking everywhere etc.

I'm wondering if it would be possible to have a kind of social welfare for hackers government ministry, which pays kiwi researchers for their efforts pertaining to New Zealand headquartered companies directly, without needing the approval of the target company, who's head is likely in the sand anyhow.

Create an extra information stream for CERT. Banks, lawyers, doctors instant fines for leakage events. I'm looking at ACC, remember they had multiple screwups involving a CMS that could fire out emails in bulk, operated by staff!

Remember NOVAPAY? It's probably riddle with bugs, and ya'll know what that means. No incentive to find the but.

Or perhaps an approved proxy one could "hack all the NZ things" through but still be contactable by the authorities. Recording the traffic to disk temporarily would enable maximal value and help the researcher prove if they succeeded or not to claim the bounty reward.

Sometimes I just want to be sure my own bank is safe. Personally.

When the network admin sees the penetration test coming from a New Zealand based IP address - on a government subnet even - they'd visit the IP address and see a message to say it's all legit. Usually when you are being hacked you can't contact the other side like that. This would be different.

Crowd-sourced security outfit Synack use this method. It's required because sometimes there is a dispute about payout of the bounty to the successful researcher - how do you prove such a thing?

Also I hear in the US researchers found a remote-execution jailbreak for iOS and instead of collecting Apples $200,000, they opted for a way bigger million plus payout

Unauthorised Use of a Computer System

I'd like to be able to scan and probe the entire country to find vulnerable machines, as a pre-sales market research information gathering exercise. To build a list of companies at risk to contact and sell my security services to.

But some parts of that probe maybe deemed unauthorised access - if done here in NZ.  It would need to be carried out in another country, and then it would not be investigated further, if I understand the "prosecutorial budget" allocation methods we use here, it would be deemed too hard to bother looking into, unless coming fro a five eyes country, they might find it hard to get at you.

You left your headlights on

For sure, having every doorknob in your house jiggled would be un-nerving to watch, even if its somewhat equivalent to that friendly neighbour telling you your car headlights are still on so you don't flatten your battery: trying to help. But then visiting the probe IP and reading the message would allay fears and maybe boost confidence even. Free network virus check. 🙂

The reason for high standards of evidence in criminal courts and the use of the presumption of innocence, is that it is better to have criminals roaming free due to lack of evidence, than to have innocent people locked up in jail wrongly - just because they looked at your computer the wrong way. You'd need a lot of jails and the economy would suffer. Sound like any country in 2007? Tame Iti is an artistic genius not a terrorist.

HIPAA is the Health Insurance Portability and Accountability Act of 1996 and is United States legislation that provides data privacy and security provisions for safeguarding medical information.

PCI Compliance is the payment card industry code to ensure payment processors use best practices.

CERT and The NZ Police should provide revenge-porn victims their file hashes

They often say the internet has no delete button.

It's a very useful analogy to explain to new users of the internet the gravity of certain areas of their personal computer and information security: maybe think twice before uploading semi-sensitive information, and three times for anything more secret. Once it's on the internet it can be hard to delete.

How to delete files from the internet:

One way could be to create a "hash" of the file you want gone from the internet, and then you know what you don't want to know, without knowing it! Amazing. Example time:

Assume the file is named horrific-revenge-porn.jpg

The following hash (random encrypted strings derived from the picture of an idiot) can be used instead of the actual offensive / suppressed original file data - makes sense if you are trying to delete the file not to hold it! It can be given to administrators to guarantee a system does not have a copy of the file:

Horrific revenge porn

Horrific revenge porn

sha256: c8b3c2a03380f577fa9d6b67ee15e40a9f8f9a076073ea56e5b5adb2e9ffe32c
md5: 79768d44c2aca6ed68d8157130265c05
crc32: b5513fdf
bytes: 50323

For the very most extreme cases, involving criminal contraband information such as the unfortunately case of the kiwi man from Hastings sentenced to 4 years for secretly filming his female Airbnb guests, CERT and The NZ Police should offer to provide file hashes to the victims of criminal data breaches like revenge porn and so forth.

This would enable the following desirable privacy benefits:

  • ensure the banned files are not held on owned computer systems
  • securely provide the means for others to also do so
  • nothing about the files contents can be said from looking at the random letters*
  • a registry of illegal files would help large ISPs to keep their disks clean
  • an infinitely large file - even a 50 GB file - is reduced to a short piece of text
  • its not encryption - it's an irreversible scrambling of any file to a set sized chunk of gibberish

For example, lets say this picture above is some revenge-porn you made once but was posted by your evil ex-partner or stalker, and now you'd like it gone from the nets; in theory if you put the file hashes into a government registry, one day ISPs can do seasonal scans and wipe files matching.

China likely does this to laser target and delete entire sections of internet from it's citizens. They probably have scanners running 24/7 to find old shots from the Tiannamen Square Masacre - and perhaps even this new shot - this time the guy is flat as a pancake after being literally "rolled" by a tank:

China Rogue State

China Rogue State

SHA256 is the current state of the art. You can get SHA512 also but its twice the length.

MD5 was huge for a very long time. Popular for verifying big .iso files after downloading.

CRC32 is not a hash, but its a checksum maintained by your computer in the disk that can also be used in a similar way. It will detect a single bit change, but unlike a true secure hash, you can pad the altered file to get the same CRC32 for a different file easily (if you add a bit, then delete a bit also, it is just each byte added together essentially).


While it's theoretically possible for two different input files to create the same hash - a hash collision - if you use two or more different hash types like above or even just also including the filesize in bytes: 50,323 bytes in this case, you eliminate the false positive potential.

Also, any large ISP isn't going to want to automatically delete files based on just one parameter. For use by a sovereign national police force I'd recommend using all four: bytes, crc32, md5, sha256 plus a category eg: kid-porn, espionage, credentials, financial, medical/health, military, government, personal privacy, government, education, entertainment (here we hit a snag: the copyright industry).

The way a hash completely changes with tiny little single bit alterations to the input file, to get a hash collision is going to require a wildly different filesize, say 50 Kb versus 50 Tb!

The commands to get this on my mac were:

shasum -a 256 [bad-file.jpg]
md5 [bad-file.jpg]
crc32 [bad-file.jpg]
ls -la [bad-file.jpg]

What's nice is that you can double check your hash using a different program, openssl:

openssl sha -sha256 [bad-file.jpg]

Now you can quickly compare huge files without transferring them; and detect tiny alterations to big files.

Syntella macOS Forensics Tool

Syntella (Download v0.2.1) is an open-source macOS forensics tool that creates a text file report that tells you about exactly whats running on your system, open connections, services, network connectivity, disks, USB, global ping time network checks. It takes about 5 minutes to run and gives you a text file with a timestamp that you can "diff" against earlier files to see changes easily.

It's designed for advanced mac users to check there system is safe, and for regular users peruse and give to an expert for help with. View the example report.

It is licensed as open source via the Apache 2.0 license, source code (click to see what it's doing behind the scenes).

I capture a copy of all the reports via encrypted link to

In exchange for your use of the software I am collecting it's output presently, this can be disabled for a fee.

At this time I do not have automatic deletion of reports setup, but they are at difficult to guess web URLs only reported in the app and not linked from any places online. If the app becomes popular I'll begin deleting reports on a daily rotation to ensure privacy but still give time to download.

Privacy Sensitive Categories Collected:

The labels but not the contents of:

Wifi names, machine name, hardware serials (no software is checked at all), Mac addresses, processes, programs, ports, servers, services, disk free, network connections, open files, router tables, users logged in, tunnels, mounted volume names,

We don't capture any user files or filenames, unless they are open. So consider which websites you were visited just before running it. Netstat will still show closed connections for at least 2 minutes after closing, due to the the CLOSEWAIT and TIMEWAIT states of TCP/IP.

This app collects a bunch of output from these OS tools and compiles them into a single text file you can diff from time to time to see changes.

Run from compiled Application (easy)

Download the app at

Run from source code (advanced)

Since this is security software, it's open source. You can read it and see everything it does. But you will need to also install:

  • homebrew
  • git
  • curl
  • nmap

This shell script will run a range of diagnostic tools against your machine. To install it enter at the terminal:

git clone ~/syntella

Then to run it use:


Or just double click the file icon.

To receive updates type:

cd ~/syntella/

git pull




How to use Ping to test your network latency

If bandwidth is the quantity of your connection, then latency must be a measure of the quality of it. Latency is the time it takes for the smallest amount of information to go back and forth between you and a host. If you see packet loss on your trip to your ISP then your line is the issue.

People often talk about the internet connection speed - the bandwidth as measured in megabits - but for certain realtime applications like telephony, gaming, and remote shells - the data quality is more important. Dropped packets in telephony and audio streams leads to static and lost sound.

After installing Fibre Optic at my new place I compare a ping to Google Public DNS (, and we see packet loss disappear, and the average time drop from a whopping and hard to believe 57 seconds down to just 31 milliseconds, with a minimum of 28 ms.

An example of a good ping time

13inch:~ tom$ ping
PING ( 56 data bytes
64 bytes from icmp_seq=0 ttl=59 time=32.911 ms
64 bytes from icmp_seq=1 ttl=59 time=31.874 ms
64 bytes from icmp_seq=2 ttl=59 time=30.760 ms
64 bytes from icmp_seq=3 ttl=59 time=29.730 ms
64 bytes from icmp_seq=4 ttl=59 time=31.490 ms
64 bytes from icmp_seq=5 ttl=59 time=29.063 ms
64 bytes from icmp_seq=6 ttl=59 time=32.466 ms
64 bytes from icmp_seq=7 ttl=59 time=31.149 ms
64 bytes from icmp_seq=8 ttl=59 time=32.787 ms
64 bytes from icmp_seq=9 ttl=59 time=40.585 ms
64 bytes from icmp_seq=10 ttl=59 time=32.434 ms
64 bytes from icmp_seq=11 ttl=59 time=29.902 ms
64 bytes from icmp_seq=12 ttl=59 time=29.264 ms
64 bytes from icmp_seq=13 ttl=59 time=31.894 ms
64 bytes from icmp_seq=14 ttl=59 time=32.299 ms
64 bytes from icmp_seq=15 ttl=59 time=30.051 ms
64 bytes from icmp_seq=16 ttl=59 time=32.315 ms
64 bytes from icmp_seq=17 ttl=59 time=28.942 ms
64 bytes from icmp_seq=18 ttl=59 time=31.891 ms
64 bytes from icmp_seq=19 ttl=59 time=30.485 ms
64 bytes from icmp_seq=20 ttl=59 time=29.383 ms
--- ping statistics ---
21 packets transmitted, 21 packets received, 0.0% packet loss
round-trip min/avg/max/stddev = 28.942/31.508/40.585/2.402 ms
13inch:~ tom$

Official worst internet connection ever.

Since I was on dialup at my mums place in Coromandel.

Laptop connected to my Wifi router which is getting its net itself via Wifi tethering from my iPhone 5S which is barely able to make a call or send txt let alone the internet!

491 packets transmitted, 137 packets received, 72.1% packet loss
round-trip min/avg/max/stddev = 4911.674/57951.524/100173.596/21656.897 ms
13inch:pay2c.Xyz tom$

64 bytes from icmp_seq=177 ttl=54 time=52771.304 ms
64 bytes from icmp_seq=178 ttl=54 time=51795.556 ms
64 bytes from icmp_seq=179 ttl=54 time=50792.636 ms
64 bytes from icmp_seq=180 ttl=54 time=49790.734 ms
64 bytes from icmp_seq=181 ttl=54 time=48787.671 ms
64 bytes from icmp_seq=182 ttl=54 time=47787.012 ms
64 bytes from icmp_seq=183 ttl=54 time=46782.079 ms
64 bytes from icmp_seq=184 ttl=54 time=45778.752 ms
64 bytes from icmp_seq=185 ttl=54 time=44782.822 ms
64 bytes from icmp_seq=186 ttl=54 time=43778.280 ms
64 bytes from icmp_seq=187 ttl=54 time=42774.619 ms
64 bytes from icmp_seq=188 ttl=54 time=41773.082 ms
64 bytes from icmp_seq=189 ttl=54 time=40785.548 ms
64 bytes from icmp_seq=190 ttl=54 time=39820.873 ms
64 bytes from icmp_seq=191 ttl=54 time=38818.465 ms
64 bytes from icmp_seq=195 ttl=54 time=35601.609 ms
64 bytes from icmp_seq=196 ttl=54 time=35405.563 ms
64 bytes from icmp_seq=197 ttl=54 time=34595.935 ms
64 bytes from icmp_seq=198 ttl=54 time=34440.231 ms
64 bytes from icmp_seq=199 ttl=54 time=34118.466 ms
64 bytes from icmp_seq=200 ttl=54 time=37025.789 ms
64 bytes from icmp_seq=205 ttl=54 time=33701.815 ms
64 bytes from icmp_seq=232 ttl=54 time=14587.327 ms
Request timeout for icmp_seq 252
Request timeout for icmp_seq 253
Request timeout for icmp_seq 254
64 bytes from icmp_seq=247 ttl=54 time=8570.665 ms
64 bytes from icmp_seq=248 ttl=54 time=7776.425 ms
64 bytes from icmp_seq=249 ttl=54 time=6920.444 ms
64 bytes from icmp_seq=250 ttl=54 time=6515.482 ms
64 bytes from icmp_seq=251 ttl=54 time=5631.024 ms
64 bytes from icmp_seq=252 ttl=54 time=5052.276 ms
64 bytes from icmp_seq=253 ttl=54 time=5014.476 ms
64 bytes from icmp_seq=254 ttl=54 time=5749.126 ms
64 bytes from icmp_seq=255 ttl=54 time=4911.674 ms
Request timeout for icmp_seq 264
Request timeout for icmp_seq 265
Request timeout for icmp_seq 266
Request timeout for icmp_seq 267
Request timeout for icmp_seq 268
Request timeout for icmp_seq 269
64 bytes from icmp_seq=256 ttl=54 time=14185.624 ms
Request timeout for icmp_seq 271
Request timeout for icmp_seq 272
Request timeout for icmp_seq 273
Request timeout for icmp_seq 274
Request timeout for icmp_seq 275
Request timeout for icmp_seq 276
Request timeout for icmp_seq 277
Request timeout for icmp_seq 278
Request timeout for icmp_seq 279
Request timeout for icmp_seq 280
Request timeout for icmp_seq 281
Request timeout for icmp_seq 282
Request timeout for icmp_seq 283
Request timeout for icmp_seq 284
Request timeout for icmp_seq 285
Request timeout for icmp_seq 286
Request timeout for icmp_seq 287
64 bytes from icmp_seq=257 ttl=54 time=31445.453 ms
Request timeout for icmp_seq 289
64 bytes from icmp_seq=258 ttl=54 time=32457.728 ms
Request timeout for icmp_seq 291
Request timeout for icmp_seq 292
Request timeout for icmp_seq 293
Request timeout for icmp_seq 294
64 bytes from icmp_seq=259 ttl=54 time=36411.157 ms
Request timeout for icmp_seq 296
Request timeout for icmp_seq 297
Request timeout for icmp_seq 298
64 bytes from icmp_seq=260 ttl=54 time=39733.101 ms
Request timeout for icmp_seq 300
Request timeout for icmp_seq 301
Request timeout for icmp_seq 302
64 bytes from icmp_seq=261 ttl=54 time=42477.703 ms
Request timeout for icmp_seq 304
64 bytes from icmp_seq=262 ttl=54 time=43441.612 ms
64 bytes from icmp_seq=263 ttl=54 time=43432.266 ms
Request timeout for icmp_seq 307
64 bytes from icmp_seq=264 ttl=54 time=45050.706 ms
Request timeout for icmp_seq 309
64 bytes from icmp_seq=265 ttl=54 time=45137.945 ms
64 bytes from icmp_seq=266 ttl=54 time=45173.820 ms
64 bytes from icmp_seq=267 ttl=54 time=44506.264 ms
Request timeout for icmp_seq 313
Request timeout for icmp_seq 314
Request timeout for icmp_seq 315
Request timeout for icmp_seq 316
Request timeout for icmp_seq 317
Request timeout for icmp_seq 318
Request timeout for icmp_seq 319
Request timeout for icmp_seq 320
Request timeout for icmp_seq 321
Request timeout for icmp_seq 322
Request timeout for icmp_seq 323
Request timeout for icmp_seq 324
64 bytes from icmp_seq=268 ttl=54 time=57362.380 ms
Request timeout for icmp_seq 326
Request timeout for icmp_seq 327
Request timeout for icmp_seq 328
Request timeout for icmp_seq 329
64 bytes from icmp_seq=269 ttl=54 time=61603.631 ms
64 bytes from icmp_seq=270 ttl=54 time=61590.294 ms
Request timeout for icmp_seq 332
64 bytes from icmp_seq=271 ttl=54 time=62326.436 ms
Request timeout for icmp_seq 334
Request timeout for icmp_seq 335
64 bytes from icmp_seq=272 ttl=54 time=65071.367 ms
Request timeout for icmp_seq 337
Request timeout for icmp_seq 338
64 bytes from icmp_seq=273 ttl=54 time=66941.069 ms
Request timeout for icmp_seq 340
64 bytes from icmp_seq=274 ttl=54 time=67932.502 ms
Request timeout for icmp_seq 342
Request timeout for icmp_seq 343
64 bytes from icmp_seq=275 ttl=54 time=69433.195 ms
64 bytes from icmp_seq=276 ttl=54 time=69818.324 ms
64 bytes from icmp_seq=278 ttl=54 time=68618.593 ms
64 bytes from icmp_seq=279 ttl=54 time=68027.879 ms
64 bytes from icmp_seq=280 ttl=54 time=67154.395 ms
Request timeout for icmp_seq 349
Request timeout for icmp_seq 350
Request timeout for icmp_seq 351
Request timeout for icmp_seq 352
Request timeout for icmp_seq 353
64 bytes from icmp_seq=281 ttl=54 time=74049.322 ms
Request timeout for icmp_seq 355
Request timeout for icmp_seq 356
64 bytes from icmp_seq=282 ttl=54 time=76036.362 ms
Request timeout for icmp_seq 358
Request timeout for icmp_seq 359
Request timeout for icmp_seq 360
Request timeout for icmp_seq 361
Request timeout for icmp_seq 362
64 bytes from icmp_seq=283 ttl=54 time=81122.351 ms
64 bytes from icmp_seq=284 ttl=54 time=80909.673 ms
Request timeout for icmp_seq 365
64 bytes from icmp_seq=285 ttl=54 time=82186.723 ms
Request timeout for icmp_seq 367
64 bytes from icmp_seq=286 ttl=54 time=82619.370 ms
Request timeout for icmp_seq 369
Request timeout for icmp_seq 370
Request timeout for icmp_seq 371
Request timeout for icmp_seq 372
Request timeout for icmp_seq 373
Request timeout for icmp_seq 374
Request timeout for icmp_seq 375
Request timeout for icmp_seq 376
Request timeout for icmp_seq 377
Request timeout for icmp_seq 378
64 bytes from icmp_seq=287 ttl=54 time=93182.677 ms
Request timeout for icmp_seq 380
Request timeout for icmp_seq 381
64 bytes from icmp_seq=317 ttl=54 time=65322.352 ms
Request timeout for icmp_seq 383
Request timeout for icmp_seq 384
Request timeout for icmp_seq 385
Request timeout for icmp_seq 386
64 bytes from icmp_seq=318 ttl=54 time=69428.438 ms
64 bytes from icmp_seq=319 ttl=54 time=69204.778 ms
64 bytes from icmp_seq=320 ttl=54 time=68604.710 ms
64 bytes from icmp_seq=321 ttl=54 time=69250.154 ms
64 bytes from icmp_seq=322 ttl=54 time=69024.922 ms
64 bytes from icmp_seq=323 ttl=54 time=68852.795 ms
64 bytes from icmp_seq=324 ttl=54 time=68381.716 ms
64 bytes from icmp_seq=325 ttl=54 time=68460.245 ms
64 bytes from icmp_seq=326 ttl=54 time=67890.598 ms
Request timeout for icmp_seq 396
Request timeout for icmp_seq 397
Request timeout for icmp_seq 398
64 bytes from icmp_seq=327 ttl=54 time=72224.042 ms
Request timeout for icmp_seq 400
Request timeout for icmp_seq 401
Request timeout for icmp_seq 402
Request timeout for icmp_seq 403
64 bytes from icmp_seq=348 ttl=54 time=56707.034 ms
Request timeout for icmp_seq 405
Request timeout for icmp_seq 406
64 bytes from icmp_seq=351 ttl=54 time=56621.675 ms
64 bytes from icmp_seq=352 ttl=54 time=55620.525 ms
64 bytes from icmp_seq=353 ttl=54 time=54887.953 ms
64 bytes from icmp_seq=354 ttl=54 time=54205.236 ms
64 bytes from icmp_seq=355 ttl=54 time=53624.076 ms
Request timeout for icmp_seq 412
Request timeout for icmp_seq 413
Request timeout for icmp_seq 414
Request timeout for icmp_seq 415
Request timeout for icmp_seq 416
Request timeout for icmp_seq 417
Request timeout for icmp_seq 418
Request timeout for icmp_seq 419
Request timeout for icmp_seq 420
Request timeout for icmp_seq 421
64 bytes from icmp_seq=357 ttl=54 time=65797.155 ms
Request timeout for icmp_seq 423
Request timeout for icmp_seq 424
Request timeout for icmp_seq 425
Request timeout for icmp_seq 426
Request timeout for icmp_seq 427
Request timeout for icmp_seq 428
Request timeout for icmp_seq 429
Request timeout for icmp_seq 430
Request timeout for icmp_seq 431
Request timeout for icmp_seq 432
Request timeout for icmp_seq 433
Request timeout for icmp_seq 434
Request timeout for icmp_seq 435
Request timeout for icmp_seq 436
Request timeout for icmp_seq 437
Request timeout for icmp_seq 438
Request timeout for icmp_seq 439
Request timeout for icmp_seq 440
Request timeout for icmp_seq 441
Request timeout for icmp_seq 442
Request timeout for icmp_seq 443
Request timeout for icmp_seq 444
Request timeout for icmp_seq 445
Request timeout for icmp_seq 446
Request timeout for icmp_seq 447
64 bytes from icmp_seq=389 ttl=54 time=59933.766 ms
64 bytes from icmp_seq=390 ttl=54 time=59740.642 ms
64 bytes from icmp_seq=391 ttl=54 time=59882.162 ms
Request timeout for icmp_seq 451
Request timeout for icmp_seq 452
Request timeout for icmp_seq 453
Request timeout for icmp_seq 454
Request timeout for icmp_seq 455
Request timeout for icmp_seq 456
Request timeout for icmp_seq 457
64 bytes from icmp_seq=392 ttl=54 time=66705.322 ms
64 bytes from icmp_seq=393 ttl=54 time=66187.189 ms
64 bytes from icmp_seq=394 ttl=54 time=65313.387 ms
64 bytes from icmp_seq=395 ttl=54 time=65274.663 ms
64 bytes from icmp_seq=396 ttl=54 time=65201.259 ms
64 bytes from icmp_seq=397 ttl=54 time=65043.247 ms
64 bytes from icmp_seq=398 ttl=54 time=64591.833 ms
Request timeout for icmp_seq 465
Request timeout for icmp_seq 466
Request timeout for icmp_seq 467
Request timeout for icmp_seq 468
Request timeout for icmp_seq 469
Request timeout for icmp_seq 470
64 bytes from icmp_seq=399 ttl=54 time=72608.465 ms
64 bytes from icmp_seq=400 ttl=54 time=71606.695 ms
64 bytes from icmp_seq=401 ttl=54 time=70603.331 ms
64 bytes from icmp_seq=402 ttl=54 time=69610.261 ms
64 bytes from icmp_seq=403 ttl=54 time=68606.763 ms
64 bytes from icmp_seq=404 ttl=54 time=67607.793 ms
64 bytes from icmp_seq=405 ttl=54 time=66610.263 ms
64 bytes from icmp_seq=406 ttl=54 time=66066.892 ms
64 bytes from icmp_seq=409 ttl=54 time=65526.582 ms
64 bytes from icmp_seq=410 ttl=54 time=64708.668 ms
64 bytes from icmp_seq=411 ttl=54 time=63938.379 ms
64 bytes from icmp_seq=412 ttl=54 time=62978.977 ms
64 bytes from icmp_seq=413 ttl=54 time=62329.996 ms
64 bytes from icmp_seq=414 ttl=54 time=61685.132 ms
64 bytes from icmp_seq=415 ttl=54 time=60885.822 ms
64 bytes from icmp_seq=416 ttl=54 time=60366.599 ms
64 bytes from icmp_seq=417 ttl=54 time=60080.570 ms
64 bytes from icmp_seq=418 ttl=54 time=59211.712 ms
64 bytes from icmp_seq=419 ttl=54 time=58520.336 ms
64 bytes from icmp_seq=420 ttl=54 time=57832.112 ms
--- ping statistics ---
491 packets transmitted, 137 packets received, 72.1% packet loss
round-trip min/avg/max/stddev = 4911.674/57951.524/100173.596/21656.897 ms
13inch:pay2c.Xyz tom$

SHA1 Collision detected on Github

About 9 days ago something incredibly unlikely happened... something so rare that

If you had five million programmers each generating one commit per second, your chances of generating a single accidental collision before the Sun turns into a red giant and engulfs the Earth is about 50%.

A few weeks ago, researchers announced SHAttered, the first collision of the SHA-1 hash function, at Github. Similar to how a Bitcoin is a series of zeroes in a long row discovered by gradually adding static noise to the signal, this collission is likely a big chunk of random characters and noise.

Amazingly this event now has it's own website, and Y2K style frenzied rush to swap out sha1 for sha256/512. Never fear though because as they say:

Today, many applications still rely on SHA-1, even though theoretical attacks have been known since 2005, and SHA-1 was officially deprecated by NIST in 2011. We hope our practical attack on SHA-1 will increase awareness and convince the industry to quickly move to safer alteratives, such as SHA-256.

Try This At Home?

This attack required over 9,223,372,036,854,775,808 SHA1 computations. This took the equivalent processing power as 6,500 years of single-CPU computations and 110 years of single-GPU computations. So give it a go yourself (hehe) the source code is available.

What about SHA256 any chances there of a collision?

The hash input space of SHA256, which to be honest is not something I think I understand because I thought all hash functions have infinite input space, is something like this many terabytes:


By my calculations, to get even a slim 0.0000001% chance of a collision with SHA256 you'd need to run through 4.8×10 to 29 of hash runs, or this many:


That's just for a 0.0000001% chance of collision.


Raven Arts Ltd

Raven was to be, and can still be, as described in the mission statement:

  1. Creative Mission Statement and Declaration
    • We propose to create in this agreement a private arts and democratic business society that is the body corporate set to manage the offices and non-exclusive sales teams for a cutting edge full service new media creative agency and production house in Auckland. Our directors and partners have coalesced their equipment and skills into a large production studio consisting of multiple photo and audio recording suites, integrated events and promotion capabilities, a technology marketplace, timeshare CBD offices in Wyndham street, an artistic internship scheme, and yearly high-technology conference.
    • We shall officially call it Raven Arts Limited, also known as Raven Arts NZ,, or just “The Raven”. Complaints and suggestions can go to
    • The industry categories and types of work we expect to be doing are broad and can include but are not limited to:
      1. Audio, Video, Events, Games, Augmented Reality, Animation & CGI, Home Automation, Still Photography, Network Security, Business Mentoring, Artistic Consulting, Network Marketing, Equipment Hire & Sales, Talent, Website Design Build, Mobile App Dev, Interactive Installations, and generally speaking, stuff that is super awesome fun stuff.
      2. Excludes anything involving victimisation, violence, etc. We can do a documentary about violence, but we can’t use the fund to set-up forced labour camps along the Mekong.
    • Directors may use the space for what-ever purpose they wish within reason.
    • As well as being a group of creative capitalist professionals wanting to save costs and share an office, we are hoping to set something in motion to become a creative lead referral service and matching agency that links artists with businesses.
    • Participation in The Raven is always 100% voluntary. Incentives for positive action are championed over penalties for inaction generally, and this agreement contains very little restrictions and liability on you.
    • The Raven’s individual companies and sole traders, as well as The Raven’s own business ecosystems depend upon information about existing and potential clients, and our ability to accurately and fairly communicate the value of our sales propositions and previously done work articles and deliverables to them in order to satisfy demand and therefore source new and continued patronage. Since information is the lifeblood of so many parts of our sales and support pipelines, good information security practices but also importantly lead declaration and financial participation shall be incentivised by the automatic allocation of company shares the disclosure of information on security, declaration, quotes, invoice payment, deliverables, ethics and honesty.
    • Signing this agreement and declaration of intent in no way possible causes any increased liability than those in Schedule A namely your equal share of the costs of the first year of operation.


See the full text by clicking "Request Access" at 

An Issue With The Lease at 26 Wyndham St

My business pals and I created the ultimate creative community; half signed a lease and fully paid a deposit; and then just two days after officially moving in they give 20 hours notice to me to move out! with no basis! As I say in this clip, I spent 18 years at my previous accommodation in Ponsonby, building up a collection of whacky and funky audio and art objects - the best of which have come here and to my new home at a top secret location - and since we couldn't move in right away, I actually bounced all of this stuff out via three or four other locations: St Luke, then Waterview via my amazing friend Shane and his moving trck! One day to get out, and one day to get all the way up those 4 flights of stairs! The truck did two trips on the first day, but we got up to Wyndham with one truck-load I believe.


and it's on Wyndham St a very steep street in central mid-town Auckland, just a marble-balls roll down the hill from Sky Tower badness my main man.

So the manager Barfoot steps in frustratingly..... and somehow they pulled out with only one signature on the lease.

an-offer-of-resolution - Tom's offer to solve the issue.

combined-docs-for-26-wyndham-t-atkinson The Lease agreement, the floor plan, the bank statement showing deposits.

Rachel Beer from Barfoot can be heard on this audio file apparently giving me extra notice of eviction via verbal.

Tom's discussions with the landlords

I hope all have had a chance to read over my offer of resolution (attached).

In the offer I put forward two solutions to this conundrum we face:
1) EITHER we move to sign and place deposit as per normal. My preferred option. Can pay three months deposit every month for three months if agreeable. OR
2) a very short period where I pay full rent in order to find time to move out at a more regular pace. Suggest somewhere between TWO WEEKS and 3 MONTHS.
I would think that it is in everyones bests interests - but mostly yours - to accept some payment from me and allow me an orderly pack down.
  • Consider the following benefits to yourselves by accepting this resolution:
  • I really like the space. Paul first showed it to me on 7 September - a long time ago. It's very good to have tenants that appreciate the space because they will be very well behaved and look after it and always pay the rent on time. My last tenancy lasted 18 years and I never once missed a rent payment, in total putting through over $390,000 over the 18 year period from 1998.
  • Having a tenant that is often in the office during the evenings is good for security and reduces fire risk
  • The location synergises with my interests
  • Considerable sound pollution already exists in the area such as Ding Dong bar in the basement, but more importantly, the other bar right underneath us at level 1. These are fairly noisy things - with drunken bar goers often sitting on the steps to the office. When I come at night I scare them away and deter burglers.
  • I plan to upgrade security. I have my own fully wireless GSM alarm system + motion sensors + distributed webcam software etc.
  • I run a web consultancy: - this business use is in line with the business use on the lease agreement i have
Failing to do so - such as that course that seems to be going down - would put you at risk of this lawsuit / private prosecution and evidence PDF as I am about to file in the Auckland District Court. The downsides of this for you are:
  • I've already contacted fair go and have a massive community of friends and supporters - I am a musician we have friends
  • Artists and Musicians are already at the bottom rung of society even though everybody from the poorest to the richest person loves to listen to it. Music forms such as important part in so many lives. Unless we perform live and sell merchandise though, it is very difficult to make a living just from recorded music. If you are curious, check out my CV at I have over 70 compositions registered with APRA, have 7 albums out, played big day out 5 times and done 4 international tours (Vanuatu, Australia, UK, Ireland). I think you should show some Mana and be kind.
  • I'm planning to contact the body corporate and true owners of the building shortly if you do not comply or if any of my equipment is damaged
  • Your job positions are now at risk since you have not filled the space I know for sure since 7 September. Pitiful work guys.
  • The building is not great - you should cut losses and accept my offer.
  • I have some covert audio recordings featuring Rachel Beer and sample is also attached. I have also placed the sample only at:
  • Today at 12:25pm I called emergency services on 111 and spoke with them for 6 minutes, claiming I had a vigilante landlord trying to break the law, we had a nice chat about what I can and can't do. Very informative. Maybe will be seeing you and them later in fact.
  • Maybe if I get angry I will launch a bad publicity campaign against Barfoot and co. Send it to the building investors.

Later on Thursday...

Tom got arrested trying to get his gear back, that's why he doesn't have the crash stands in this video:

So starting at the start. Check out this Stock Options contract that I wrote. Basically 90% of. I stayed up a bit late though you can hear how tired I am:

Rachel Beer - Barfoot & Thompson

Rachel Beer - Barfoot & Thompson

Rachel Beer from Barfoot can be heard on this audio file apparently giving me extra notice of this baseless eviction via verbal.


Learn To Code Hands-on Computer Tuition

Tom Atkinson - Director, Tomachi Corp.

Tom Atkinson - Director, Tomachi Corp.

Six Week and One-day Classes with Tom

Tomachi Corporation has developed a series of hands-on six week online courses with weekly webinar and 20 minute catch-up phone call:

Week 1 - The Smorgasbord: Intro to programming, Making cool graphics and animations with code, Database-driven websites with Linux, Boost My Business Quick, and Launch Your Own Central Bank and Mint Your Own ERC20 Compliant Ethereum Coin.

    • Small class sizes run via Google Hangouts
    • Content tailored to your knowledge level
    • Requires only macOS Windows or Linux and internet access
    • Step by step class walk throughs
    • To enrol complete the survey below...

Create your own user feedback survey


For enrolments please fill in the form above ^^^, if it does not display then try this SurveyMonkey link

Once that survey is complete grab yourself a slot (only 80 available!) on the next available webinar

Reserve Webinar Seat RSVP

Bring Your Own Laptop - Short 6 week Computer Courses
Tomachi Corp needs to do some basic market research… which course would you prefer?