현재 보호는 휴대폰 인증번호와 토큰 인증인데, 등록 기계에서는 1시간에 한 번씩 동일한 IP도 등록해 주는데 다른 방법은 없을까요?
현재 보호는 휴대폰 인증번호와 토큰 인증인데, 등록 기계에서는 1시간에 한 번씩 동일한 IP도 등록해 주는데 다른 방법은 없을까요?
저는 중국어를 잘 못해서 질문을 이해하지 못합니다!
예전에 친구가 인터넷에서 찾은 인증코드 생성 프로그램을 사용해서 하나 썼는데, 너무 많은 사람이 사용하는 것 같은데 막지 않더군요. 나는 개인적으로 문제를 해결하기 위해 JS를 선호합니다. 마침내 이 솔루션을 사용한 후에는 더 이상 문제가 없었습니다.
TokenCode, 로봇이 제출 등록을 시뮬레이션하는 것을 방지
TokenCode는 데모 스크립트를 사용합니다
<code><?php #===================================================================== #= Copyright (c) 2015 猫七(QQ:77068320) = #= All rights reserverd. = #===================================================================== #= TokenCode 防模拟提交程序 类(PHP版本) = #= 使用说明:http://www.miaoqiyuan.cn/products/tokencode/last.zip = #= 演示地址:http://www.miaoqiyuan.cn/products/tokencode/ = #= 使用说明:http://www.miaoqiyuan.cn/p/tokencode = #= 邮箱地址:mqycn@126.com QQ:77068320 1301425789 = #===================================================================== class TokenCode { public $value, $code ; public $OperationList; public function __construct() { $resultValue = $this -> RandomKey($this -> RandomIntger()); $resultCode = "'" . $resultValue . "'"; $this -> OperationList = Array("+", "-" ,"*"); for( $i = 0 ; $i < $this -> RandomIntger() + 3; $i++){ $op = $this -> RandOperation(); switch($op){ case "+": case "-": $random = $this -> RandEquations(); $resultValue .= $random["value"]; $resultCode .= "+(" . $random["code"] . ")"; break; default: $random = $this -> RandomKey($this -> RandomIntger()); $resultValue .= $random; $resultCode .= "+'" . $random . "'"; break; } } $rnd1 = $this -> RandomIntger(); $rnd2 = $this -> RandomIntger() + 8; $this -> value = substr($resultValue, $rnd1, $rnd2); $this -> code = "(" . $resultCode . ").substring(" . $rnd1 . "," . ($rnd1 + $rnd2) . ")"; } private function RandEquations(){ $va = $str = $this -> RandomLong(); $this -> OperationList = Array("+", "-" ,"*"); for( $i = 0 ; $i < $this -> RandomIntger(); $i++){ $op = $this -> RandOperation(); $vb = $this -> RandomLong(); switch($op){ case "+": $va += $vb; $str .= "+" . $vb; break; case "-": $va -= $vb; $str .= "-" . $vb; break; case "*": $va *= $vb; $str = "(" . $str . ")*" . $vb; break; } } return Array( "code" => $str, "value" => $va ); } private function RandOperation(){ return $this -> OperationList[rand() % count($this -> OperationList)]; } private function RandomIntger(){ return (int)substr(rand(), 1, 1) + 1; } private function RandomLong(){ return (int)substr(rand(), 1, 3) + 1; } private function RandomKey($len = 10){ return substr(md5(rand()), 1, $len + 5); } } ?> </code>
전화 방법:
<code><?php require("TokenCode.php"); $token = new TokenCode(); $tokenValue = $token -> value ; $tokenCode = $token -> code ; //代码段 $_SESSION["_TOKENCODE"] = $token -> value ; //代码段 echo '<script type="text/javascript">_TOKENCODE=' . $token -> code . ';</script>'; ?></code>
세션을 저장한 후 검증 페이지로 이동하여 제출된 코드와 검증 결과를 확인합니다. 프로그램 변경 사항은 거의 없으며 js만 변경하면 됩니다.
<code>#AJAX方式 $.post("/", {mob : $("#mob").val() , token : _TOKENCODE }, function(){ } ); #URL方式 $("#send").click(function(){ if(this.href.indexOf('&token=')==-1){ this.href+='&token=' + _TOKENCODE }; });</code>
IP 제한 및 고강도 인증코드
가상번호로 등록하셨나요?
등록기계에서는 빈번호를 다 등록했는데 인증번호가 옵니다
이게 어떤 등록 기계이고, 어떤 휴대전화 번호인지 설명해 주실 수 있나요?
내가 생각한 방법
방법 1. 등록 시 인증 레이어 추가: 12306 사진 선택, 타오바오 슬라이딩 모듈 + 배경 이미지
방법 2. 얼굴 인식 등 생체 인식 추가, 입술 움직임 감지, 생체 인식을 통과해야만 실제로 사용자가 생성됩니다.
국내 WeBank는 자체 앱에서 생체 감지 기술을 사용했지만, 이 기술은 현재 상대적으로 보안 요구 사항이 높은 시나리오에서 주로 사용되며 보조 확인 수단으로만 사용되며 100% 종속이 아닙니다. 효과는 여전히 좋다.
인증번호를 입력하거나 IP 제한을 추가하면 동일한 IP를 연속으로 등록할 수 없습니다
인증코드 받는 방법을 변경해보세요.
음성으로 인증 코드를 받으세요. 웹 페이지에 휴대폰 번호를 입력한 후 통화 플랫폼을 사용하여 휴대폰 소유자에게 음성 통화를 겁니다.