|  | 
	
		| Exposing the Password Secrets of Paltalk | 
	
	
	  |  | 
  
  			|  | 
	
	 |  | 
	
		
	
		 |  | 
		
	
		|  | 
	
		|  | 
	
		|  | 
	
	
		
	
	
	
		|  | 
	
		|  | 
	
		|  | 
	
		
	
		 |  | 
	
		| 
			Paltalk 
			is one of the emerging instant messenger with more than 4 million 
			members around the world. It features thousands of chat rooms, video 
			conferencing, PC to Phone calls etc.
			 | 
	 |  | 
	
		| It is a universal messenger which supports simultaneous conversation 
		using leading messengers such as GTalk, AIM, MSN, ICQ, Yahoo & Facebook 
		etc. | 
	
		|  | 
		
		|  | 
	
	
		
	
		
		
		 |  | 
	
		| Like most of IM clients, 
			Paltalk also stores the user account details including 
			passwords in the registry for subsequent logins so that user do not 
			have to enter the password every time. Note that the password is 
			stored only if user has selected 'Save Password' at login time.
 Paltalk saves main Paltalk account password in the Registry 
			at following location under the sub key named after your nickname 
			(login name)
 
 | 
		 |  | 
		| HKEY_CURRENT_USER\Software\Paltalk\<nick_name> | 
		 |  | 
		|   | 
	 |  | 
	
		| Actual encrypted password is stored under above key with value name 
		as 'pwd'. For example, in my case the encrypted password for my 
		nickname ('nagtalk') is stored at following location as shown in the 
		above screen shot.
 | 
	 |  | 
	
		| HKEY_CURRENT_USER\Software\Paltalk\nagtalk | 
	 |  | 
	
		| In addition to main Paltalk account password, it also stores 
		individual messenger (such as Yahoo, Gtalk, MSN etc) passwords under 
		unique keyname for each messenger. For example, AIM messenger account 
		information is stored under following registry key (refer to above 
		screenshot) | 
	 |  | 
	
		| HKEY_CURRENT_USER\Software\Paltalk\nagtalk\AIM | 
	 |  | 
	
		| Now all the AIM account passwords are stored under this location 
		with the key name as login name of the respective account. For example, 
		my AIM account login (nag@aol.com) is stored under following registry 
		key (refer to above screenshot) | 
	 |  | 
	
		| HKEY_CURRENT_USER\Software\Paltalk\nagtalk\AIM\nag@aol.com | 
	 |  | 
	
		| The password for each messenger account is encoded with BASE64 algorithm 
		and stored in the registry value named 'pwd' under the respective 
		account key. | 
	
		|  | 
	
		|  | 
	
	
		
	
		 |  | 
	
		| Paltalk uses its own 
			proprietary algorithm to encrypt the main account password which is 
			stored in the registry. In my case, the encrypted password text 
			looks like this, "2890297528213388275533842923294822881697". From 
			this encrypted text we can get the length of original password by 
			dividing it by 4. This leads to the fact that each group of the four 
			characters in encrypted password refers to single character in 
			original password. 
 All other messenger (such as Gtalk, 
			Yahoo, MSN etc) passwords are encoded with simple BASE64 algorithm 
			and can easily decoded to get the original password.
 | 
	
		|  | 
	
		|  | 
	
		
	
	 |  | 
	
		| Here are the detailed steps for 
			decrypting the encrypted Paltalk account password. 
 | 
 |  | 
	
		
	
	 |  | 
	
		| Here you need to first find the Paltalk installation drive letter. 
		Install location is generally present at following registry location | 
	 |  | 
		| HKEY_CURRENT_USER\Software\Paltalk | 
	 |  | 
		| Under this key, there is a registry value named 'InstallerAppDir' 
		which contains complete installed path of Paltalk. We just need the 
		drive letter from this path. 
 Once you get the drive letter, you 
		can use GetVolumeInformation function as show below to get the serial 
		number for this drive.
 | 
	
		| DWORD dwSerial;DWORD dwSize = 256;
 char strSerial[256];
 
 if( GetVolumeInformation(strDrive, 0, 0, &dwSerial, 0,0,0,0) == TRUE 
		)
 {
 sprintf_s(strSerial, dwSize, "%08X", dwSerial);
 }
 | 
	
		| Finally we will get 8 character serial number which is later used in 
		actual decryption process. | 
	
		|  | 
	
		|  | 
	
		
	
	 |  | 
	 | Next we perform union of Paltalk nickname 
		(login name) and drive serial number by coupling one character from 
		nickname & serial number alternatively. For example, in my case it will 
		appear like below 
 | 
 |  | 
		| Nickname: nagtalk Drive 
		serial no: 12345678
 Union text: n1a2g3t4a5l6k78
 | 
	 |  | 
 | Next we will form a bigger string by combining 
		this union string multiple times until it is double the length of the 
		original password. Note that we can get the length of original password 
		by dividing encrypted password by 4. For example, if the original 
		password length is 15 then we need to combine above string 2 times 
		leading to final union string as shown below. | 
 |  | 
 
		| Final Union Text: 
		n1a2g3t4a5l6k78n1a2g3t4a5l6k78 
 | 
 |  | 
 |  | 
	 
		 	
	
	
 |  | 
	
	
	 | In each step of the decryption operation, we 
		take 4 characters from encrypted password. But only first 3 characters 
		are actually used here, the 4th character is ignored. Each time, one 
		character from 'Final union string' is taken and subjected to some magic 
		operations. Finally its added to the integer form of 3 characters taken 
		from encrypted text. The concrete algorithm for each step of decryption 
		operation is shown below. 
 | 
 |  | 
	
	 
		| dwUnionLen = strlen('n1a2g3t4a5l6k78'); strEnc3Char = 3 chars from encrypted text
 strFinalUnion = 
		n1a2g3t4a5l6k78n1a2g3t4a5l6k78
 
 p = atol(strEnc3Char);
 
 b = strFinalUnion[dwUnionLen+i-1];
 d = 0x86 - b;
 d = d - i;
 
 OrgPassChar = p + d;
 | 
 |  | 
	
		| In each step of the above decryption operation, variable 
		'OrgPassChar' contains each character from original password. This loop 
		is to be repeated N number of times where N refers to the length of 
		original password. | 
	
		|  | 
	
		|  | 
	
		
	
	 |  | 
		|  
		
			|   | PaltalkPasswordDecryptor is a dedicated tool to recover passwords 
			stored by Paltalk. It can instantly recover main Paltalk 
			password as well as other messenger passwords for all accounts stored 
			by Paltalk. 
 |  | 
	
	 |  | 
	
		|   | 
 |  | 
	
	
		| PaltalkPasswordDecryptor is a portable tool which does not require 
		installation and work across wide range of platforms starting from 
		Windows XP to Windows 7. You can also use our other tool, 
		IMPasswordDecryptor 
		to recover the Paltalk passwords along with other instant messenger 
		passwords. | 
	
		|  | 
	
		|  | 
	
		
	
		 |  | 
		| Above article explains in detail how Paltalk stores the account 
		password using its own proprietary encryption algorithm and shows how 
		one can manually decrypt such password to recover the original 
		password. 
 Note that above decryption process is based on latest 
		version of Paltalk Messenger (Version 9.9 build 367) and it may 
		change with upcoming versions of the Messenger.
 | 
	
		|  | 
	
		|  | 
		
		
	
		 |  | 
		
	
		|  | 
	
		|  | 
	
		|  | 
	
		|  | 
		|  |