| 
			
			 | 
		#166 | 
| 
			
			
			
			 Nameless Being 
			
			
			
		
			
			
			 | 
	
	|
	
		
		
		
		
			 
		
		
		
		
		
		
		
			
		
		
		
	 | 
| 
			
			 | 
		#167 | 
| 
			
			
			
			 Guru 
			
			![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 914 
				Karma: 3410461 
				Join Date: May 2004 
				
				
				
				Device: Kindle Touch 
				
				
				 | 
	
	
	
		
		
		
		
		 
			
			Thanks for the info, mosert. 
		
	
		
		
		
		
		
		
		
		
		
		
	
	A first glimse into v2.0.114.1 reveals that the Bob Jenkins hash is applied twice now: 1. bobJenkinsHash(info:url) // results in the old checksum seed like used in older toolbar versions 2. generate a 80 byte table from the hash in 1. 3. bobJenkinsHash(80 byte table) // which is the new checksum seed So all that is necessary is to add the code for converting the first hash into the 80 byte table. I am going to add the assembler snippets in a bit here. Doc  | 
| 
		 | 
	
	
	
		
		
		
		
			 
		
		
		
		
		
		
		
			
		
		
		
	 | 
| 
			
			 | 
		#168 | 
| 
			
			
			
			 Nameless Being 
			
			
			
		
			
			
			 | 
	
	
	
		
		
		
		
		 
			
			how did you find these conclusions without the assembler snippet ?  
		
	
		
		
		
		
		
		
		
		
		
		
	
	![]() now game has opened : we are toying with google !  | 
	
		
		
		
		
			 
		
		
		
		
		
		
		
			
		
		
		
	 | 
| 
			
			 | 
		#169 | 
| 
			
			
			
			 Guru 
			
			![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 914 
				Karma: 3410461 
				Join Date: May 2004 
				
				
				
				Device: Kindle Touch 
				
				
				 | 
	
	
	
		
		
		
		
		 
			
			I do have the snippet  
		
	
		
		
		
		
		
		
		
		
		
		
	
	  Just have to clean it up before posting them here.
		 | 
| 
		 | 
	
	
	
		
		
		
		
			 
		
		
		
		
		
		
		
			
		
		
		
	 | 
| 
			
			 | 
		#170 | 
| 
			
			
			
			 Is papyrophobic! 
			
			![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 1,926 
				Karma: 1009999 
				Join Date: Aug 2003 
				Location: USA 
				
				
				Device: Dell Axim 
				
				
				 | 
	
	
	
		
		
		
		
		 
			
			So here is the promised update, in assembler code: 
		
	
		
		
		
		
		
		
		
		
		
		
	
	Before Toolbar v2.0.114, this was basically the code to calculate the CH: PHP Code: 
	
			
	In Toolbar v2.0.114, Google doesn't stop here. The code goes on: PHP Code: 
	
			
	PHP Code: 
	
			
	1. bobJenkinsHash(info:url) 2. the resulting hash (32bit) undergoes a small modification 3. generate a 80 byte table from the modified hash in 1. 4. bobJenkinsHash(80 byte table) After that, like in previous toolbar versions, you convert eax to unsigned integer and prepand CH=6. The remaining step is to transcode the assembler snippets into high-level again.  | 
| 
		 | 
	
	
	
		
		
		
		
			 
		
		
		
		
		
		
		
			
		
		
		
	 | 
| 
			
			 | 
		#171 | 
| 
			
			
			
			 Nameless Being 
			
			
			
		
			
			
			 | 
	
	
	
		
		
			
			 
				
				(This is Alex Stapleton)
			 
			
			
			I've got a job now so dont have rediculous amounts of free time to update my code. However I will give it a shot whenever I get a chance if nobody else beats me too it.
		 
		
	
		
		
		
		
		
		
		
		
		
		
	
	 | 
	
		
		
		
		
			 
		
		
		
		
		
		
		
			
		
		
		
	 | 
| 
			
			 | 
		#172 | 
| 
			
			
			
			 Nameless Being 
			
			
			
		
			
			
			 | 
	
	
	
		
		
			
			 
				
				(Alex Stapleton)
			 
			
			
			Ok, got some spare time tonight, going to comment the new code so we can get an idea of whats going on with the new code
		 
		
	
		
		
		
		
		
		
		
		
		
		
	
	 | 
	
		
		
		
		
			 
		
		
		
		
		
		
		
			
		
		
		
	 | 
| 
			
			 | 
		#173 | 
| 
			
			
			
			 Nameless Being 
			
			
			
		
			
			
			 | 
	
	
	
		
		
			
			 
				
				(Alex Stapleton)
			 
			
			
			Can you please post a FULL ASM dump of the hash code please, just in case any of the registers being used have changed or something.
		 
		
	
		
		
		
		
		
		
		
		
		
		
	
	 | 
	
		
		
		
		
			 
		
		
		
		
		
		
		
			
		
		
		
	 | 
| 
			
			 | 
		#174 | 
| 
			
			
			
			 Enthusiast 
			
			![]() ![]() Posts: 49 
				Karma: 123 
				Join Date: Jun 2004 
				
				
				
				
				
				
				 | 
	
	
	
		
		
		
		
		 PHP Code: 
	
			
	 | 
| 
		 | 
	
	
	
		
		
		
		
			 
		
		
		
		
		
		
		
			
		
		
		
	 | 
| 
			
			 | 
		#175 | 
| 
			
			
			
			 Enthusiast 
			
			![]() ![]() Posts: 49 
				Karma: 123 
				Join Date: Jun 2004 
				
				
				
				
				
				
				 | 
	
	
	
		
		
		
		
		 
			
			please check my above ASM with bits o PHP stuck in for mistakes please 
		
	
		
		
		
		
		
		
		
		
		
		
		
			No idea if this gives the right output or not but easier to read. $p is called so because the 4th char should almost always p $w is called so because the 8th char should not quite almost always be w e.g. http://www capiche? ive converted this to high level somewhat PHP Code: 
	
			
	Last edited by alexstapleton; 09-14-2004 at 05:31 PM.  | 
| 
		 | 
	
	
	
		
		
		
		
			 
		
		
		
		
		
		
		
			
		
		
		
	 | 
| 
			
			 | 
		#176 | 
| 
			
			
			
			 Junior Member 
			
			![]() Posts: 2 
				Karma: 10 
				Join Date: Sep 2004 
				
				
				
				
				
				
				 | 
	
	
	
		
		
		
		
		 
			
			Hi all, 
		
	
		
		
		
		
		
		
		
		
		
		
	
	I've just done all the work in C, including a small checksum calculator. Enjoy and don't forget to greet me in your upcoming tools   http://pagerank.mindsay.com/ Tarakan  | 
| 
		 | 
	
	
	
		
		
		
		
			 
		
		
		
		
		
		
		
			
		
		
		
	 | 
| 
			
			 | 
		#177 | 
| 
			
			
			
			 Enthusiast 
			
			![]() ![]() Posts: 49 
				Karma: 123 
				Join Date: Jun 2004 
				
				
				
				
				
				
				 | 
	
	
	
		
		
		
		
		 
			
			almost figured out the 80byte table bit, will post findings tomorrow. need sleep! 
		
	
		
		
		
		
		
		
		
		
		
		
	
	someone check my 32 bit mutate stuff and report back!!!  | 
| 
		 | 
	
	
	
		
		
		
		
			 
		
		
		
		
		
		
		
			
		
		
		
	 | 
| 
			
			 | 
		#178 | 
| 
			
			
			
			 Enthusiast 
			
			![]() ![]() Posts: 49 
				Karma: 123 
				Join Date: Jun 2004 
				
				
				
				
				
				
				 | 
	
	
	
		
		
		
		
		 
			
			ah right gprm beat me too it, nice one. if nobody has got a php version up by tomorrow evening ill do one. (damned jobs getting in the way of geekdom)
		 
		
	
		
		
		
		
		
		
		
		
		
		
	
	 | 
| 
		 | 
	
	
	
		
		
		
		
			 
		
		
		
		
		
		
		
			
		
		
		
	 | 
| 
			
			 | 
		#179 | 
| 
			
			
			
			 Guru 
			
			![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 914 
				Karma: 3410461 
				Join Date: May 2004 
				
				
				
				Device: Kindle Touch 
				
				
				 | 
	
	
	
		
		
		
		
		 
			
			Nice job guys! 
		
	
		
		
		
		
		
		
		
		
		
		
	
	gprm, I hope you don't mind me posting your c source here? ![]() Code: 
	/* gET my pAGE rANK mOFO ! A piece of code made for fun. This is an extract from GPRM. Don't take this checksum thing too seriously. Google can't reasonably expect to protect his technology with a table look-up hash algorithm ?! gprm@altern.org This code is published under the GNU Public License. If you use it, you have to explicitely mention GPRM and me. Tarakan */ // checksum calculation, plain C char data[160]; char url[500]; unsigned int prbuf[20],l; char site[150]; strcpy(data, "info:"); strcat(data, site); l=hash((unsigned char *)data, strlen(data), 0xe6359a60); l=(((l/7) << 2) | ((l%13)&7)); prbuf[0]=l; for(i=1; i<20; i++) prbuf[i]=prbuf[i-1]-9; l=hash((BYTE *)prbuf, 80, 0xe6359a60);  | 
| 
		 | 
	
	
	
		
		
		
		
			 
		
		
		
		
		
		
		
			
		
		
		
	 | 
| 
			
			 | 
		#180 | 
| 
			
			
			
			 Guru 
			
			![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 914 
				Karma: 3410461 
				Join Date: May 2004 
				
				
				
				Device: Kindle Touch 
				
				
				 | 
	
	
	
		
		
		
		
		 
			
			Alex, I know what you mean btw. Often also the opposite is true: geekdom is getting in the way of my job  
		
	
		
		
		
		
		
		
		
		
		
		
	
	 
		 | 
| 
		 | 
	
	
	
		
		
		
		
			 
		
		
		
		
		
		
		
			
		
		
		
	 | 
![]()  | 
            
        
            
            
  | 
    
			 
			Similar Threads
		 | 
	||||
| Thread | Thread Starter | Forum | Replies | Last Post | 
| Seriously thoughtful Dekker's Algorithm help. | Catire | Lounge | 13 | 03-19-2010 11:03 AM | 
| Bulk Pagerank Checker Script? | SNaRe | Lounge | 2 | 10-22-2006 05:36 PM | 
| Google Toolbar Pagerank Checksum Revealed! | Alexander Turcic | Lounge | 5 | 02-17-2006 09:09 AM | 
| Google Checksum CH calculator | cyberax | Lounge | 2 | 08-17-2004 10:37 PM |