Encryption and You!

Let’s talk about encryption.

Right now, there’s a number of governmental agencies that are lobbying Congress to push forward the idea that they need full access to communication data when ever it is asked for. To protect the interests of the United States, find criminals, terrorists (foreign and domestic), and other no-good people. Or just people who are up to no good.

There’s a level that I can agree with. I’m okay with some meta data (phone number to phone number and duration, specifically for overseas calls), but not so okay with the recording/listening of those conversations.  But that’s just talking about old school telephony.

Now we live in an age where a rotary phone is nearly extinct, and to call someone, you take a small device from your pocket, touch it a few times, and are instantly connected to another person.  Cell phones, smartphones, and even Voice-over-IP (VoIP) phones are the major way we communicate now.  Some of these methods also encrypt the communication line between parties, and some plainly encrypt the entire device.

Computers, tablets, and smartphones all now ship with some way to encrypt and secure the data of the device.  Computers have had Trust Platform Modules (TPM) for a few years now, though we’ve had encryption software like TrueCrypt (and it’s new forks) for many more years, and Android and iOS have had encryption available since Gingerbread 2.3.4 and iOS 4, respectively.

The agencies want access to that encrypted data when ever they want.  They’re not mentioning search warrants in their discussions, by the way, which just sets off some alarms.  While I understand what they’re asking for, they are also asking for the keys to the kingdom.  They want the device, service, and software providers to turn over encryption keys when ever they ask, bypassing the search warrant process in an effort to extradite the prosecution of crimes.

A court just ordered that a pair of financial investors , who are being accused of insider trading, cannot be ordered to provide passwords to their phones because of their encryption, so therefore the Fifth Amendment is being upheld in this case (right to protection from compelled self-incrimination). [Article on Ars]

As a matter of personal opinion, I have no reason to encrypt any of my devices.  But the “I have nothing to hide” statement is only for those who don’t care enough about their personal data.  I don’t encrypt to hide anything from the United States government.  I encrypt to put a measure of difficulty for someone who steals my phone, my laptop, or my computer.  I encrypt my backups, my online storage data, and make passwords as long and as complicated as the systems allow.  This is to protect me and my family.

Therefore, here is my proposal: If the agencies of the United States government want full, backdoor access to our encrypted data (which is still a bad idea), we want the Digital Millennium Copyright Act (DMCA) revoked.  Simply, if they want tech companies to reverse-engineer the existing encryption technology, that would be breaking the laws from the DMCA, and thus self-incriminating.  If we can’t tinker with our own devices, neither should the government.

Wordfence and Missing Tables

Wordfence is a great plugin for WordPress sites.  Great for managing, notifying, and all around blocking malicious activity.  It’s one of the more highly touted security plugins, and it earns its title.

However, after an update a while back, they added a Dashboard widget, which gives you an at-a-glance info tool for what Wordfence has done for you lately.  But, my error log, and the lack of data, showed there was a problem.  My version simply would not create the required tables, even when fully removed and reinstalled.

I took the error log from the reinstall, which stated that it could not create the table, and spit out the query it was trying to use (in this case, two tables).  I tried to execute the queries, but was met with errno: -1.

The trick was to create the tables with a different name, and then rename them to the proper version.  Here’s the two original queries used in the install:

Selec All Code:
 filenameHash CHAR(64) NOT NULL PRIMARY KEY,
 file VARCHAR(1000) NOT NULL,
 md5 CHAR(32) NOT NULL
 ) DEFAULT charset=utf8
Selec All Code:
 countryCode VARCHAR(2) NOT NULL,
 PRIMARY KEY(IP, unixday)
 ) DEFAULT charset=utf8

Rename the wp_wfFilesChanged to be something like wp_wfFilesChanged2 in the query, then after the table is made, rename it back to wp_wfFilesChanged.

If you don’t know how to do any of this, do not muck around in your SQL table without consulting someone who understands them.

AutoIt – Flash Player

At some point in the last year, the folks over at Ninite.com were asked by Adobe to stop serving Flash Player via their free service.  If you paid, you could include Flash Player in the bundle.  However, pricing for 3,500 Windows computers gets steep really quickly, in the eyes of many purse-string holders.  So here’s a bit of code that should help you get Flash out there, directly from Adobe, without a technician needing to be present. Remember to either comment out the Admin check section, or replace the credentials accordingly, so users can run it without a problem.

Selec All Code:
#include <Inet.au3>
#include <String.au3>
#include <Array.au3>
;Ensure running as Administrator account
If IsAdmin() = 0 Then
	RunAs("<administrator>", @ComputerName, "<password>", 1, @AutoItExe)
;Pull the web page source for parsing
$tempFile = FileOpen(@TempDir & "\FPTemp.txt", 2)
FileWrite($tempFile, _InetGetSource("http://www.adobe.com/products/flashplayer/distribution3.html"))
;Read the file, and use a regex to find our current version
$version = StringRegExp(FileRead(@TempDir & "\FPTemp.txt"), "([0-9\.]{10} \(Win and Mac\))", 3)
$version = _ArrayToString($version, "", 0, 0)
ConsoleWrite($version & @CRLF)
;Cut it up to get our actual version info
$netFullVer = StringLeft($version, 10)
ConsoleWrite("Full Version:  " & $netFullVer & @CRLF)
$netBigVer = StringLeft($netFullVer, 2)
ConsoleWrite("Major Version: " & $netBigVer & @CRLF)
$netTinyVer = StringRight($netFullVer, 3)
ConsoleWrite("Patch Version: " & $netTinyVer & @CRLF)
;Check our local version, and cut it up as well
$regFullVer = RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\Macromedia\FlashPlayer", "CurrentVersion")
If @error then
	ConsoleWriteError("Error reading key: " & @error & @CRLF)
$regFullVer = StringReplace($regFullVer, ",", ".")
$regBigVer = StringLeft($regFullVer, 2)
$regTinyVer = StringRight($regFullVer, 3)
ConsoleWrite("Local Full Version:  " & $regFullVer & @CRLF)
ConsoleWrite("Local Major Version: " & $regBigVer & @CRLF)
ConsoleWrite("Local Patch Version: " & $regTinyVer & @CRLF)
;Compare the major version, if the same, check minor, install as needed
If $netBigVer > $regBigVer Then
ElseIf $netBigVer >= $regBigVer And $netTinyVer > $regTinyVer Then
Func GetFlash()
	InetGet("http://download.macromedia.com/get/flashplayer/current/licensing/win/install_flash_player_" & $netBigVer & "_active_x.msi", @TempDir & "\install_flash_player_" & $netBigVer & "_active_x.msi", 1)
	RunWait("msiexec.exe /qb- /i " & @TempDir & "\install_flash_player_" & $netBigVer & "_active_x.msi", @TempDir)
	InetGet("http://download.macromedia.com/get/flashplayer/current/licensing/win/install_flash_player_" & $netBigVer & "_plugin.msi", @TempDir & "\install_flash_player_" & $netBigVer & "_plugin.msi", 1)
	RunWait("msiexec.exe /qb- /i " & @TempDir & "\install_flash_player_" & $netBigVer & "_plugin.msi", @TempDir)



†: You must have a redistribution agreement with Adobe to use the MSI package.

Goodbye, GCC

Ladies and gentlemen

For the last thirteen years, GCC has been my home. I started here in 2002, as a student, and graduated in 2005. I walked off the stage, and was hired as a board approved employee a few months later. I met my wife at the campus, and created the most wonderful friendships anyone could hope for. Glendale is a place I will miss, between my coworkers and the students I’ve helped through the years.

I’ve climbed what few rungs there are for a PSA in IT, and have found myself wanting, and for the last three years, waiting. There is so much more I want to do, however the organization (not just GCC, but the whole of Maricopa) needs to gather together to move forward. The potential is there, as is the talent, and the willingness to be a team. There are barriers that hinder that movement, but with the right driving force, those hindrances can be overcome.

I am officially resigning my position with Maricopa Community Colleges, my team, and my GCC family, effective January 27, 2015.

Thank you all for the memories,
R. Bryan Adamson

WordPress, Android, and Cyanogen

Writing from a smartphone device can be a tedious and difficult task for anyone.  Text messaging has developed a language all its own, and most teenage users of said medium are fast at “whr r u” rather than “Where are you?”, which is more complete, but still needs more gramatical fulfilment.
Thankfully, for those of us who use blogs (re: my wife and I), WordPress has a utility for mobile devices, which allows us to manage, write, and approve comments.  In the past, it was geared for WordPress.com writers, where the vast majority of individual, entrepenure wordsmiths make their living (or just rant about things they like).
In a combination of application updates to both mobile devices and Internet servers, the WordPress writing community can now view the site statistics, and access the Dashboard.  While to the reader, this may not seem like much; to the folks who really dive into how the system functions, and monitor their SEO, that’s big news.
As some people know, my phone has been on the fritz, and today was my last straw. I have finaqlly updated to Cyanogen Mod 7.1.0. Previous attempts made my battery drain faster than ever. I believe I know why: A truck-load of applications, running services. This time, I did not restore every single app I had, but cherry-picked ones that I use on a fairly frequent basis.
Wordpress, being one of the chosen, seems to have been updated since I last used its main interface. The first set of images offers a very well designed control panel, but my the main reason for this post, is the New Post screen; specifically, the actual entry area.
As opposed to typing out paragraphs, or short messages in a box only millimeters tall, the newer edition of WordPress on the Android platform takes over the vast majority of the screen. With the new design, crafting entries, while retaining the ability to review previous passages on the road, has enabled writers to keep their grammar in check. The only part I could make a gripe about, is if there were no keypad on my phone, the on-screen keyboard would take too much realestate, and completely negate my positive review.
In the end, if you have a smartphone that has a full, physical keyboard, and a WordPress installation, I highly suggest the official WordPress application.

Surprise Ring of Fire Craft Beer Fest

Surprise, Arizona, just had a event called the Ring of Fire, which coupled with a tennis tournament.  The Ring of Fire event was a craft beer and food festival, where several micro breweries offered up their different brews.  Here are the ones I tried, with pictures to accompany.

1: Kona Brewing, Pipeline Porter. Hawiian kona brew, nice and dark, goes down smooth. Definitely a kona coffee flavor on the finish.





2: Red Hood, ESB. A reddish hued beer, citrus notes, high in the front, takes time to dissipate





3: Sierra Nevada, Tumbler Autumn Brown Ale. Not as dark as a porter, darker than a red, a bit nutty.





4: Odell Brewing, 90 Shilling Ale. Good red color, slight citrus notes, but a clean finish.





5: Gordon Biersch, FestBeir. IPA, marked as a lager, it comes out light. Far too many things going on to pin down a particular flavor.





6: Widmer Brothers, Drop Top Amber Ale. Very smooth, wife says it almost has an apple scent.





7: Gordon Biersch, Märzen. A red lager, citrus note, crisp, and clean.





8: Kona Brewing, Longboard. IPA, smooth, but a bit too light in my taste. A bit bland, same as many other IPA brews. Committed alcohol abuse.





9: Odell Brewing, IPA. Great scent, good start, powerful finish. A little like a tea.

New Pants

With the recent Firefox 5 update, the theme/pants I was using on the site had a slight bug to it, so I’m trying out new themes/pants.

If you see things change up, don’t worry, I’m not being hacked, I’m just breaking things on my own.

AFK: When, Where, and Why – Top 10

There comes a time, in each of our lives, when we must step away from the keyboard.  From brief moments, phone calls, neighbors’ kid at the door, to newborns crying; life just happens that way.

But when is it proper to do so?  There’s a balance we have to maintain as well.  In the middle of your big fight with Arthas, is it really proper for the main healer to say they need a bio break?

This is the AFK Top 10:Continue reading

GoDaddy and Domain Renewals

If you, or someone you know, uses GoDaddy for their domain name, please make double-sure that your domain is set to auto-renew. I just had to re-instate mine, as it expired yesterday, and I got NO notification that my domain renewal was cut off.

Oh, and I will be attempting to join in on the PostADay2011. I may be 5 days behind, but I found out about it last night….about the same time actually.