아래는 네이버 비밀번호 변경 코드입니다.

비밀번호 변경에 성공하면 True를 반환하며, 실패한다면 False를 반환합니다. 그리고 아래의 createRsaKey 함수는 아래의 자바스크립트 파일을 이용한 것이니, Microsoft Script Control를 참조하고 ScriptControl 객체를 생성하여 컴파일을 거치고 스크립트 내의 createRsaKey를 호출하시면 되겠습니다.

Public Function ChangePassword(passwd As String, newPasswd As String) As Boolean
    Dim SessionKey$, keyName$, eValue$, nValue$, id$, token$
    WinHttp.Open "GET", "https://nid.naver.com/user2/help/myInfo.nhn?m=viewChangePasswd&menu=nid1_sub_m3"
    WinHttp.Send
    
    SessionKey = Split(Split(WinHttp.ResponseText, "sessionKey = """)(1), """")(0)
    keyName = Split(Split(WinHttp.ResponseText, "keyName = """)(1), """")(0)
    eValue = Split(Split(WinHttp.ResponseText, "eValue = """)(1), """")(0)
    nValue = Split(Split(WinHttp.ResponseText, "nValue = """)(1), """")(0)
    token = Split(Split(WinHttp.ResponseText, "token_help"" value=""")(1), """")(0)
    id = Split(Split(WinHttp.ResponseText, "id = """)(1), """")(0)
    
    WinHttp.Open "POST", "https://nid.naver.com/user2/help/myInfo.nhn?m=actionChangePasswd"
    WinHttp.SetRequestHeader "Content-Type", "application/x-www-form-urlencoded"
    WinHttp.Send "token_help=" & token & "&menu=nid1_sub_m3&encPasswd=" & createRsaKey(id, passwd, SessionKey, keyName, eValue, nValue) & "&encNewPasswd=" & createRsaKey(id, newPasswd, SessionKey, keyName, eValue, nValue) & "&encNm=" & keyName
    
    If InStr(WinHttp.ResponseText, "완료되었습니다") Then ChangePassword = True
End Function

rsa.js