- Házimozi belépő szinten
- Hobby elektronika
- DUNE médialejátszók topicja
- Milyen videókártyát?
- Fejhallgató erősítő és DAC topik
- AMD Ryzen 9 / 7 / 5 / 3 5***(X) "Zen 3" (AM4)
- Milyen processzort vegyek?
- A hardverek is nehezen viselik a kánikulát
- Kettő együtt: Radeon RX 9070 és 9070 XT tesztje
- Apple MacBook
Új hozzászólás Aktív témák
-
ekkold
őstag
válasz
cinemazealot #32 üzenetére
Igazából ennek akkor van értelme, ha van tárhelyed valahol (ahol php-t is futtathatsz), vagy ha van saját NAS-od, vagy szervered. Ha otthon egy sima PC-n akarnám használni, akkor egy javascript verzió lenne az ügyesebb.
-
ekkold
őstag
válasz
Geri Bátyó #31 üzenetére
Elvileg javascript-ben is meg lehetne csinálni egy helyben futtatható verziót, ahhoz a böngészőn kívül nem kellene más. Viszont ezzel a kétfaktoros azonosítás gyakorlatilag az egyfaktorossal azonos biztonsági szinte süllyed. Ettől függetlenül nem vetem el a dolgot, (lehet, hogy megcsinálom) mert még mindig jobbnak érzem mint mondjuk egy totp.app használatát. Meg egy ilyet bárki tudna használni...
-
ekkold
őstag
válasz
Geri Bátyó #28 üzenetére
Ez nem egy kész megoldás, csak a lényeg, mindenféle körítés nélkül. Tehát kell egy minimális webprogramozói ismeret ahhoz, hogy fel tudd használni.
Lennének ötleteim, hogyan lehetne viszonyleg egyszerűen többfelhasználós weboldalt csinálni ehhez. Tehát mondjuk minden felhasználónak lenne egy név/jelszó párosa, amit ha megad akkor látja az aktuális idő alapú kulcsot, ill. fel tudja venni/módosíthatja a fő kulcsot. Csak ezt több idő lenne megvalósítani, és nem biztos, hogy ennyi energiát/időt rá akarok szánni erre. A sajátom, amire készült azt már tudja, napi használatban van. -
ekkold
őstag
Bemásoltam korábban egy dekódoló függvényt, én is a netről szedtem. Teljesen jól működik, csak használni kell.
Azon kívül talán léteznek még ingyenes tárhely szolgáltatók, ahol php-t is lehet használni. Egy ilyen apphoz nagyon kevés hely is elegendő. Az ATW-n pl. most is lehet ingyen tárhelyet regisztrálni - mindjárt kipróbálom egy-e rajta... -
ekkold
őstag
válasz
cinemazealot #4 üzenetére
Csak javaslat, de szerintem építsd be a base32 dekódoló függvényt a php fájlodba, így nem kellene külső 3. fél által gyártott kódot meghívnod.
-
ekkold
őstag
Hasonlót gyártottam én is, persze jelszavas védelemmel kiegészítve.
Több kulcsot kezel, és egy táblázatban jeleníti meg, valahogy így:
Hogy ne kelljen külső dekódert használni azt is beemeltem a php kódba:
$map = array(
'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', // 7
'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', // 15
'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', // 23
'Y', 'Z', '2', '3', '4', '5', '6', '7', // 31
'=' // padding char
);
$flippedMap = array(
'A'=>'0', 'B'=>'1', 'C'=>'2', 'D'=>'3', 'E'=>'4', 'F'=>'5', 'G'=>'6', 'H'=>'7',
'I'=>'8', 'J'=>'9', 'K'=>'10', 'L'=>'11', 'M'=>'12', 'N'=>'13', 'O'=>'14', 'P'=>'15',
'Q'=>'16', 'R'=>'17', 'S'=>'18', 'T'=>'19', 'U'=>'20', 'V'=>'21', 'W'=>'22', 'X'=>'23',
'Y'=>'24', 'Z'=>'25', '2'=>'26', '3'=>'27', '4'=>'28', '5'=>'29', '6'=>'30', '7'=>'31'
);
function decode($input) {
global $map;
global $flippedMap;
if(empty($input)) return;
$paddingCharCount = substr_count($input, $map[32]);
$allowedValues = array(6,4,3,1,0);
if(!in_array($paddingCharCount, $allowedValues)) return false;
for($i=0; $i<4; $i++){
if($paddingCharCount == $allowedValues[$i] &&
substr($input, -($allowedValues[$i])) != str_repeat($map[32], $allowedValues[$i])) return false;
}
$input = str_replace('=','', $input);
$input = str_split($input);
$binaryString = "";
for($i=0; $i < count($input); $i = $i+8) {
$x = "";
if(!in_array($input[$i], $map)) return false;
for($j=0; $j < 8; $j++) {
$x .= str_pad(base_convert($flippedMap[@$input[$i + $j]], 10, 2), 5, '0', STR_PAD_LEFT);
}
$eightBits = str_split($x, 8);
for($z = 0; $z < count($eightBits); $z++) {
$binaryString .= ( ($y = chr(base_convert($eightBits[$z], 2, 10))) || ord($y) == 48 ) ? $y:"";
}
}
return $binaryString;
}//fv
/*
function encode($input, $padding = true) {
global $map;
global $flippedMap;
if(empty($input)) return "";
$input = str_split($input);
$binaryString = "";
for($i = 0; $i < count($input); $i++) {
$binaryString .= str_pad(base_convert(ord($input[$i]), 10, 2), 8, '0', STR_PAD_LEFT);
}
$fiveBitBinaryArray = str_split($binaryString, 5);
$base32 = "";
$i=0;
while($i < count($fiveBitBinaryArray)) {
$base32 .= $map[base_convert(str_pad($fiveBitBinaryArray[$i], 5,'0'), 2, 10)];
$i++;
}
if($padding && ($x = strlen($binaryString) % 40) != 0) {
if($x == 8) $base32 .= str_repeat($map[32], 6);
else if($x == 16) $base32 .= str_repeat($map[32], 4);
else if($x == 24) $base32 .= str_repeat($map[32], 3);
else if($x == 32) $base32 .= $map[32];
}
return $base32;
}
*/
Új hozzászólás Aktív témák
Hirdetés
- Synology NAS
- Házimozi belépő szinten
- Kerékpárosok, bringások ide!
- Hobby elektronika
- Formula-1
- sziku69: Fűzzük össze a szavakat :)
- Vicces képek
- Luck Dragon: Asszociációs játék. :)
- Google Pixel 9 Pro XL - hét szűk esztendő
- OFF TOPIC 44 - Te mondd, hogy offtopic, a te hangod mélyebb!
- További aktív témák...
- Csere-Beszámítás! Sapphire Pure RX 7700XT 12GB GDDR6 Videokártya! Bemutató Darab!
- Eredeti Windows 10 / 11 Pro aktiválókulcs AZONNALI SZÁLLÍTÁSSAL!
- ÁRGARANCIA!Épített KomPhone Ryzen 5 7600X 32/64GB RAM RTX 5070 12GB GAMER PC termékbeszámítással
- 134 - Lenovo Legion Pro 7 (16IRX8H) - Intel Core i9-13900HX, RTX 4090
- Honor Pad X8 64GB, Wi-Fi, 1 Év Garanciával
Állásajánlatok
Cég: Promenade Publishing House Kft.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest