게임강의

[비베] 개인호스팅없이 Pastebin을 이용한 간단한 하드인증처리

컨텐츠 정보

본문


보안보단 간편성과 편의성에 중심을 둔글입니다 여기선 완전히 기초적인 하드인증만을 다루기 때문에 보안관련해서는 다른분들 강좌와 같이 사용하시면 더 좋을거 같네요


강좌를 몇번써본적이 없어서 많이 서툴어요



pastebin이 뭔지 모르는사람들을 위해 한번 설명을 하자면.인터넷에 올릴수있는 메모장같은겁니다 얼마든지 저장이 가능하고

무료호스팅같은걸 받았을때 트래픽이 초과하거나 그럴일이 없죠

외국사람들이 소스를 올려놓고 링크를 거는데도 많이 사용합니다


우선



http://pastebin.com/



에 가서 회원가입이 안되있다면 회원가입을 해줍니다,

간단한 구글 회원가입을 추천드려요



로그인을 하셨으면 상단의



newpaste.png?type=w740



를 눌러서 새글을 써주시고요,

내용이나 제목은 알아서 하시길 바랍니다



글을쓴후, raw란 버튼을 누르면 나오는 주소를 미리 복사해둡니다

저같은 경우에는



http://pastebin.com/raw/2NJUWHzP



네요



이제 소스코드에 가서 작성해줍시다

참조 - 구성 Microsoft Winhttp머시기도 참조해주시구요

리스트박스를 하나 만듭니다



 



1

2

3

4

5

6
Dim w as new Winhttp Request '맨윗줄에 선언

w.Open "GET", 아까전 기억한주소 '아까전 기억한주소의 웹소스 GET

w.Send 'Send 합니다

For i = 0 To UBound(Split(w.ResponseText, vbCrLf)) '줄바뀌는 부분을 모두자르고 Ubound로 최대값을 구한다

List1.AddItem Split(w.ResponseText, vbCrLf)(i)


Next i
  Logo.pngCodeHighligher

 






이런식으로 작성해주시면 먼저 GET을 이용해 내용을 가져오고,

For 반복문을 선언합니다, Ubound로 몇줄까진지 반복할 최대수를 구하고

리스트박스에 w.ResponseText(가져온내용)을 Split함수로 한줄씩 짤라서 For 반복문만큼 반복해줍니다

그러면 한줄씩 리스트박스에 추가가되었겠죠

 



OK.png?type=w740






이제 불러와지는것을 알았네요



하드인증 번호를 가져와봅시다



소스 밑부분에







 



1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21
Public Function GetDriveSerialNumber(Optional ByVal DriveLetter As String) As Long


Dim fso As Object, Drv As Object

Set fso = CreateObject("Scripting.FileSystemObject")

If DriveLetter <> "" Then

Set Drv = fso.GetDrive(DriveLetter)

Else

Set Drv = fso.GetDrive(fso.GetDriveName(App.Path))

End If

With Drv

If .IsReady Then

DriveSerial = Abs(.SerialNumber)

Else

DriveSerial = -1

End If

End With

Set Drv = Nothing

Set fso = Nothing

GetDriveSerialNumber = DriveSerial

End Function
  Logo.pngCodeHighligher

 






추가해주시고, 라벨을 하나만드신뒤 

폼로드부분에 Label1.Caption = GetDriveSerialNumber

을 해주시면 

 



%C8%AE%C0%CE.png?type=w740






하드 고유번호 또한 불러와졌네요

이 함수는



http://cafe.naver.com/gogoomas/237061



이곳을 참조했습니다



이제 Pastebin에가서 Edit을 눌러서 원래적었던 내용은 지우고 보이는 하드번호를 적어줍시다

리스트박스 Add부분은 이제 주석 처리를 해주시고 아래와 같이 작성합니다.











 



1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19
Dim w as new Winhttp Request '맨윗줄에 선언

Label1.Caption = GetDriveSerialNumber




w.Open "GET", "http://pastebin.com/raw/2NJUWHzP" '주소열기

w.Send 'Send


For i = 0 To UBound(Split(w.ResponseText, vbCrLf)) '줄바뀌는 부분을 모두자르고 Ubound로 최대값을 구한다

If Split(w.ResponseText, vbCrLf)(i) = GetDriveSerialNumber Then '만약 Pastebin의 내용과 자신의 하드번호가 일치할경우

MsgBox "인증에 성공하였습니다", vbInformation, "알림"


Else '아닐경우


MsgBox "인증에 실패하셨습니다"

End If




Next i
  Logo.pngCodeHighligher

 







++ 수정합니다 저윗대로하면내용에 쓸데없는내용갯수만큼

실패,성공 이런식으로 뜰건데 아무도 말을안했네요..

 




1



2



3



4



5



6



7



8



9



10



11



12



13



14



15



16



17



18



19



20



21



22



23



24



25



w.Open "GET", "http://pastebin.com/raw/2NJUWHzP" '주소열기



w.Send 'Send



Dim Line



Line = UBound(Split(w.ResponseText, vbCrLf))



Dim Read As Integer



Read = 0



For i = 0 To UBound(Split(w.ResponseText, vbCrLf)) '줄바뀌는 부분을 모두자르고 Ubound로 최대값을 구한다



read = read + 1



If Split(w.ResponseText, vbCrLf)(i) = GetDriveSerialNumber Then '만약 Pastebin의 내용과 자신의 하드번호가 일치할경우



MsgBox "인증에 성공하였습니다", vbInformation, "알림"



End If



Next i



If Read = Line Then



MsgBox("인증실패")



End If


  Logo.pngCodeHighlighter





요렇게 ㄱㄱ합시다



하드번호1

하드번호 2



형식으로 작성해주시면되요 인증에 성공하였습니다 라고 나오면 하드인증에 성공하신겁니다아무튼 부족한 강좌 읽어주셔서 감사합니다


관련자료

댓글 0
등록된 댓글이 없습니다.

최근글


새댓글


알림 0