Skip to content

A tutorial focusing on the parameters of yescrypt encryption. Includes information about the mysterious j9T parameter that is usually seen in /etc/shadow file entries.

Notifications You must be signed in to change notification settings

LauriAlanen/pyescrypt-tutorial

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 

Repository files navigation

Yescrypt Parameters

In the /etc/shadow file passwords hashed with yescrypt, usually have this j9T parameter as shown in the following example shadow entry, but information about this parameter is hard to come by.

test_user_1:$6$j9T$xyz$VKswtvLoVpOLcpjDMIFXhxa8ukqqKSKHjcPBLZUk9NxWldmlFQY4stUGo.QjEhav7mp86ih2PRqYPqjkhWi5y.:19796:0:99999:7:::

When you create a user using adduser test_user_1, you are might never see this j9T change, but now you might question what does this parameter even do?

Yescrypt Parameter j9T

Let's look at creating a yescrypt hash using python with the following line hasher = Yescrypt(n=2 ** 16, r=1, p=1, mode=Mode.MCF)

Code for this example can be found here GitHub Repo

The important parameters in this case are

  • n amount of blocks
  • r size of the blocks in 128-byte units
  • p amount of paraller threads run

Recomended paremeters for different setups can be found here

So j9T Means What?

  • J Seems to be the same no matter the parameters.
  • The second parameter is the amount of blocks, the value of the second parameter can be calculated using 8 2 n , where n is the block parameter value so in this case 9 , which results in 8 2 9 = 4096   b l o c k s . Note!! If this parameters is bigger than 9 rather than showing numbers 10 etc, letters are shown in alphabetical order, so 10 would be A.
  • Third parameter is the size of the blocks the formula for calculating the size of the blocks is 3 + n , so in this case, we know that T is the 20 t h alphabet, and the alphabetical counting starts after 9 so, b l o c k s i z e = 3 + 9 + 20 = 32 T .

About

A tutorial focusing on the parameters of yescrypt encryption. Includes information about the mysterious j9T parameter that is usually seen in /etc/shadow file entries.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages