Wednesday, 3 April 2013

Creating dynamic account passwords

Creating dynamic account passwords

One of the worst things with the online world is passwords. Not just that you have to have a password, but that you have to have one for almost everything nowadays. And worst yet it that everything should have a different password(not that most people do). And when you do a different one, you can never remember which one you used where.

The thing is most people do reuse the one(also crappy) password they have[1], this means that if someone were to crack your password they would get everything, provided they can find where it is used. The reason why people do it is because a strong password is damn hard to remember without writing it down, since it contains: Uppercase, lowercase, numbers and special characters. and resembles something like :2cf@#dba5Fb0, no one will remember a password like this, let alone one for every site. Instead people will opt for a more comfortable approach. This is probably the reason why to most common passwords last year were:
  • password
  • 123456
  • 12345678
  • jesus
  • ninja
  • mustang
  • password1
And sometimes to "strengthen" it they add some numbers at the end(usually there birthday). Turning ninja into ninja24. To a computer that added almost no extra complexity.

But what if I told you that creating a different secure password for every site is quite easy? In fact you don't even have to remember you password. You are going to have to remember a few things, since what we're going to do is re-generate your password every time you use it. To do this we require two things, the two things you'll will have to remember. A pass phrase(think current password) and a formula.

How does it work?

Every time we log into a site we use our passphrase + formula to create our password. The formula will ensure our password is different every time, the pass phrase ensure that we know the key to generate it.

The formula stays the same all the time, however everybody can use a different formula. Im going to show you how a formula works and how you can create your own simple formula that you can use.


Going through the formula

So the formula is simple in that we are going to generate a set of Strings or characters and add that to our existing one.

For this example I'm going to generate a password for Facebook.

So the first thing I need is a pass phrase, now I suggest you look up a word in a dictionary then generate a random number from 10-100 and use that. For this example lets go with the pass phrase cold25.

So lets first check how strong cold25 is.
PasswordMeter :30%, Weak.
Secure Password : 0.54s to crack
Strength Test : Very Weak
MS Password Checker : weak

Step 1
So that pass phrase is crap. But we're not going to use it as our password. So lets make it more secure first lets take the first phrase of the website(or the last, or the whole) and stick it to our pass phrase(or the end, or the middle of after 2, or 5), I'm going to stick it on the back.

Step 2
That gives us cold25Face. Already better plus every site will have a different password! but the "Face" kinda gives away a hint :/. So lets shift our keys a bit, so now when you type "Face" move your fingers 1 to the left or right, or up, or down, or cycle through them(you can also use the values of your numbers as well). Lets go to the right:

if you reach an edge you can make your own rule either wrap around, move back or stay or whatever

The result: cold25Gsvr
Lets see how strong that is

PasswordMeter :72%, Strong.
Secure Password6 billion years to crack
Strength Test : Reasonable
MS Password Checker : Medium
Already looking much better and for that extra computing complexity we didn't really do anything, but we can do more:

Step 3
Lets all caps our website data(Face), or the pass phrase.
now lets use those numbers of ours(25) 2 and 5, and the length of the website data(Face) which is 4 and lets add that to our numbers. 2+4 =6, 5+4=9 and use those numbers for special characters. If your numbers exceed 10 then use just wrap around(if you warp around just use the last digit of the number) or backtrack the remainders on the keyboard.

and I'm going to append the key that most(or least) lines up with those as well as the length digit of the website data(4)
giving us: ^(bc,

And stick it to the end creating:

And this gives us a new password strength of:
PasswordMeter :100%, Strong.
Secure Password : 4 trillion years
Strength Test : Strong
MS Password Checker : Strong

Example Formula
So the formula we used was: (pass phrase) + allcaps(Shift 1 Right(first syllable of web address)) + (Special chars of(numbers+website data)) + the keys they line up with best.

So using that formula lets create a password for Gmail
  1. cold25H<SO: (Caps + shift keys to right)
  2. cold25H<SO:&) (2+5=7 ="&", 5+5=10=")") = &)
  3. cold25H<SO:&)n.v (add keys they line up with) = n.v
and that password is how strong?
PasswordMeter :100%, Strong.
Secure Password : 412 trillion years
Strength Test : Strong
MS Password Checker : Strong

You can decide the complexity of your own formula and how many steps you want to do and if you want to do different steps, as you saw just by doing coldGSVR we already improved our password significantly, and every site will have a different password. I'm saying this since I know must of you will be to lazy to do anything extra.

So if you want to create your own formula, then just change the rule I used and the order I used them in so maybe first do the special character(^(bc,), then the pass phrase (cold25) and then the caps + key shift web address(GSVR) to create "^(bc,cold25GSVR". Or just use this as an idea on creating formula in the first place.

Now the password isn't perfect and using a formula isn't perfect either, the formula can easily be cracked by experts, but it gives an additional layer of security.

Monday, 1 April 2013

X264 - ADM and Ab Frames- Comparison

x264 - ADM and Ab Frames - Comparison

Most of the next series of X264 related posts will be a lot lighter and smaller so I'm going to cover more settings. The settings I'll cover in thos post will be Adaptive Direct Mode(ADM) and Adaptive b-Frames(Ab-Frames)

Adaptive Direct Mode 
Also known as direct in the x264 settings, with 3 potential settings:
  1. None - Disabled direct motion vectors
  2. Spatial(default)
  3. Temporal
  4. Auto - x264 will swap between Spatial and Temporal.

Adaptive b-Frames 
Also known as b-adapt, this determine the placement of b-Frames and controls how x264 decides between adding a b-Frame of a P-frame. Since b-Frames are the most compressed out of all the frames having more b-frames should increase compression without having a image quality impact. b-adpt has 3 values to choose from and also uses the max bFrames setting to determine max consecutive beframes.
  1. Off/Disabled - Will always force the max number of consecutive bFrames after any p frame, not recommended with high consecutive b-frames as it will lead to some interesting stutter within the frame
  2. Fast - Fast attempt to determine bFrames and the quality and performance is not affective by the max number of consecutive bFrames.
  3. Optimal -  A slower but more accurate method, but performance will go down depending on the max number of consecutive bFrames. 

Since these don't really effect the quality of the video there is no reason to have any still frames.


Adaptive Direct Mode

So lets dive into it, these to graphs represents the file-size and performance of each method.

Filesize in KB
Performance FPS

Here we can see that auto performs almost identical to spatial suggesting that x264 uses spatial more often than temporal when left on auto, but since x264 has to do extra computations to determine which is better spatial out performs in performance. Interestingly none is the slowest of all the settings and the largest.

The next graph will show the relative differences in percentage between the settings when compared to spatial(default).

Percentage diff

As you can see none is 10.5% slower and yet 1.5% larger.
Temporal is 0.38 larger and 0.64 slower
Auto is 0.01 smaller but 1.13% slower

So during SD anime spatial is the best compression/performance wise
Note that it is said that auto is better suited for 2pass encodings.

Adaptive b-Frames

Filesize in KB

Performance FPS

Since bFrames are extremely small forcing bFrames at all time will lead to a smaller file size just like off does(max bFrames is 3), and since no additional decisions are made it is also faster, but not as fast as Fast. And with optimal having smaller filesize than fast.

 The next graph will show the relative differences in percentage between the settings when compared to Fast(default).

Percentage Diff

The first thing to note it that all of them are slower than Fast, however all of them have better compression than Fast. With optimal having a very good compression/performance ratio, with about 6% compression but only 4.3% slower.

ReelSteel SD
Adaptive Direct Mode
Well lets see how things change with Live Action Video.

Filesize in KB

Performance FPS

Percentage Diff

Interestingly optimal is only 0.47% slower but has 4.75% more compression

ReelSteel HD
Adaptive Direct Mode
Although I don't think HD video will have much of an impact on the data, I'm curious to see if the trend continues where Spatial and Optimal are very good.

Filesize in KB
Performance FPS

Percentage Diff

 Again nothing special Spatial performs exceptional well against the other settings

Although I don't think HD video will have much of an impact on the data, I'm curious to see if the trend continues where Spatial and Optimal are very good.
 Adaptive Direct Mode 
 I assume there won't be  much of a difference between HD and SD

Filesize in KB
Perormance FPS
Percentage Diff

 And the only diffirence is that Off is faster by 2% with about the same compression, and optimal is slower by 4.4% than in SD. Other than that it the same.

Well as there isn't that much to say other than spatial consistently had the best compression/performance ratio in Adaptive Direct mode. And Optimal had better compression than fast with a minimal to negligible performance impact.

Adaptive Direct Mode: Spatial. is the best setting.

Adaptive b-Frames: Optimal - In my opinion the small performance hit is well worth compression gained, for now at least. We should see how they perform with varying max consecutive bFrames, which we will look into next time.

  1. Introduction
  2. Presets
  3. Subme  
  4. Motion estimation method 
  5. ADM and b-adapt.