Krav: När användaren loggar in framgångsrikt kommer Discuz-programmet att skriva inloggningsuppgifterna till cookien på ett responsivt sätt, och om cookien är känd, hur dekrypterar man användar-ID:t för den nuvarande inloggade personen i cookien?
Först måste du logga in på servern och titta på/config/config_global.phpDet finns två konfigurationer i följande konfiguration:
Cookieprefix:$_config['cookie']['cookiepre'] Krypterings- och dekrypteringsnyckel:$_config['säkerhet']['authkey']
Ta denna sida som exempel: $_config['cookie']['cookiepre'] = 'Mqd1_'; , så titta på värdena av :Mqd1_2132_saltkey och Mqd1_2132_auth i kakan.
Principen är följande:
$authkey = "*********"; Det här är den hemliga nyckeln. $_config['security']['authkey'] = '*******' i config/config_global.php-filen; Det är det, du ser på vad du äger är vad som är. $salt = $_COOKIE['Mqd1_2132_saltkey']; Detta är det slumpmässiga tal som genereras av discuz $key = md5($authkey.$salt); Dekrypteringsnyckel $info = uc_authcode($_COOKIE['Mqd1_2132_auth'], 'DECODE',$key);
Skriv sedan ut $info och får ett resultat liknande detta:
bf6b7e1ddd3da431342f550eb8ce19e5 1
Vi upptäckte att det finns ett nummer 1 eller annat i slutet, som representerar ditt användar-ID, så att vi kan få användarinformationen och sedan få användarinformationen för ucenter baserat på detta ID. När du vet hur man dekrypterar den ser C#-koden ut så här:
Mata in motsvarande information i programmet, och exekveringsresultatet är följande:
Programnedladdning:
Turister, om ni vill se det dolda innehållet i detta inlägg, snälla Svar
|