Skip to content

Two factor authentication ko KR

ArchiBot edited this page Jul 8, 2024 · 34 revisions

2단계 인증

Steam includes two-factor authentication system known as "Escrow" that requires extra details for various account-related activity. 자세한 내용은 여기여기 에 있습니다. This page considers that 2FA system as well as our solution that integrates with it, called ASF 2FA.


ASF 논리 구조

Regardless if you use ASF 2FA or not, ASF includes proper logic and is fully aware of accounts protected by standard 2FA. 예를 들어 로그인 중에도 필요하면 세부사항을 입력하도록 요청할 것입니다. However, those requests can be automated by using ASF 2FA, which will automatically generate required tokens, saving you hassle and enabling extra functionality (described below).


ASF 2단계 인증(2FA)

ASF 2FA is a built-in module responsible for providing 2FA features to the ASF process, such as generating tokens and accepting confirmations. It can work in many modes, such as standalone or by duplicating your existing authenticator details (so that you can use your current authenticator and ASF 2FA at the same time).

2fa 명령어 를 실행하여 봇 계정이 이미 ASF 2단계 인증을 사용중인지 확인할 수 있습니다. Unless you've already imported your authenticator as ASF 2FA, all standard 2fa commands will be non-operative, which means that your account is not using ASF 2FA, therefore it's also unavailable for advanced ASF features that require the module to be operative.


Recommendations

There are a lot of ways to make ASF 2FA operative, here we include our recommendations based on your current situation:

  • If you're already using SteamDesktopAuthenticator, WinAuth or any other third-party app that allows you to extract 2FA details with ease, just import those to ASF.
  • If you're using official app and you don't mind resetting your 2FA credentials, the best way is to disable 2FA, then create new 2FA credentials by using joint authenticator, which will allow you to use official app and ASF 2FA. This method doesn't require root or advanced knowledge, barely following instructions.
  • If you're using official app and don't want to recreate your 2FA credentials, your options are very limited, typically you'll need root and extra fiddling around to import those details, and even with that it might be impossible.
  • If you're not using 2FA yet and don't care, you can use ASF 2FA with standalone authenticator, third-party app duplicating to ASF (same as recommendation #1), or joint authenticator with official app (same as recommendation #2).

Below we discuss all possible options and known to us methods.


Creation

In general, we strongly recommend duplicating your existing authenticator, since that's the main purpose ASF 2FA was designed for. However, ASF comes with an official MobileAuthenticator plugin that further extends ASF 2FA, allowing you to link a completely new authenticator as well. This can be useful in case you're unable or unwilling to use other tools and do not mind ASF 2FA becoming your main (and maybe only) authenticator.

There are two possible scenarios for adding a two-factor authenticator with the MobileAuthenticator plugin: standalone or joint with the official Steam mobile app. In the second scenario, you will end up with the same authenticator on both the ASF and mobile app; both will generate the same codes, and both will be able to confirm trade offers, Steam Community Market transactions, etc.

Common steps for both scenarios

No matter if you plan to use ASF as the standalone authenticator or want the same authenticator on the official Steam mobile app, you need to do those initialization steps:

  1. Create an ASF bot for the target account, start it, and log in, which you probably already did.
  2. Optionally, assign a working and operational phone number to the account here to be used by the bot. This will allow you to receive SMS code and allow recovery if needed, but it's not mandatory.
  3. Ensure you're not using 2FA yet for your account, if you do, disable it first.
  4. Execute the 2fainit [Bot] command, replacing [Bot] with your bot's name.

Assuming you got a successful reply, the following two things have happened:

  • A new <Bot>.maFile.PENDING file was generated by ASF in your config directory.
  • SMS was sent from Steam to the phone number you have assigned for the account above. If you didn't set a phone number, then an email was sent instead to the account e-mail address.

The authenticator details are not operational yet, however, you can review the generated file if you'd like to. If you want to be double safe, you can, for example, already write down the revocation code. The next steps will depend on your selected scenario.

Standalone authenticator

If you want to use ASF as your main (or even only) authenticator, now you need to do the finalization step:

  1. Execute the 2fafinalize [Bot] <ActivationCode> command, replacing [Bot] with your bot's name and <ActivationCode> with the code you've received through SMS or e-mail in the previous step.

Joint authenticator

If you want to have the same authenticator in both ASF and the official Steam mobile app, now you need to do the next steps:

  1. Ignore the SMS or e-mail code that you've received after the previous step.
  2. Install the Steam mobile app if it's not installed yet, and open it. Navigate to the Steam Guard tab and add a new authenticator by following the app's instructions.
  3. After your authenticator in the mobile app is added and working, return to ASF. You now need to tell ASF that finalization is done with the help of one of the two commands below:
  • Wait until the next 2fa code is shown in the Steam mobile app, and use the command 2fafinalized [Bot] <2fa_code_from_app> replacing [Bot] with your bot's name and <2fa_code_from_app> with the code you currently see in the Steam mobile app. If the code generated by ASF and the code you provided are the same, ASF assumes that an authenticator was added correctly and proceeds with importing your newly created authenticator.
  • We strongly recommend to do the above in order to ensure that your credentials are valid. However, if you don't want to (or can't) check if codes are the same and you know what you're doing, you can instead use the command 2fafinalizedforce [Bot], replacing [Bot] with your bot's name. ASF will assume that the authenticator was added correctly and proceed with importing your newly created authenticator.

After finalization

Assuming everything worked properly, the previously generated <Bot>.maFile.PENDING file was renamed to <Bot>.maFile.NEW. This indicates that your 2FA credentials are now valid and active. We recommend that you create a copy of that file and keep it in a secure and safe location. In addition to that, we recommend you open the file in your editor of choice and write down the revocation_code, which will allow you to, as the name implies, revoke the authenticator in case you lose it.

In regard to technical details, the generated maFile includes all details that we have received from the Steam server during linking the authenticator, and in addition to that, the device_id field, which may be needed for other authenticators. The file is fully compatible with SDA for import.

ASF automatically imports your authenticator once the procedure is done, and therefore 2fa and other related commands should now be operational for the bot account you linked the authenticator to.


불러오기

Import process requires already linked and operational authenticator that is supported by ASF. ASF currently supports a few different official and unofficial sources of 2FA - Android, SteamDesktopAuthenticator and WinAuth, on top of manual method which allows you to provide required credentials yourself. If you don't have any authenticator yet, you need to choose one of available apps and set it up firstly. 어느 것을 골라야 할지 모르겠다면 WinAuth를 추천합니다. 물론 설명만 잘 따라한다면 다른 것들도 잘 작동할 것입니다.

아래의 모든 가이드는 정상동작하고 있는 인증기를 필요로 합니다. 유효하지 않은 데이터를 가져오면 ASF 2단계 인증은 정상적으로 동작하지 않을것이므로 데이터를 가져오기 전에 인증기가 정상 작동하는지 확인하여야 합니다. 다음의 인증기 기능이 정상 작동하는지 테스트하고 확인하십시오.

  • 토큰을 생성하고 이 토큰이 Steam 네트워크에서 수락될 수 있어야 함
  • 확인사항을 가져오고, 모바일 인증기에 도착할수 있어야 함
  • 확인사항을 수락하고, Steam 네트워크에서 확인/거부로 정확하게 인식될 수 있어야 함

인증기가 위의 행동을 할 수 있는지 확인하십시오. 만약 안된다면 ASF에서도 동작하지 않을 것이고 시간만 낭비하고 추가적인 문제가 발생할 것입니다.


안드로이드 전화기

일반적으로 안드로이드 전화기에서 인증기를 가져올때 루트 권한이 필요하지는 않습니다. The below instructions require from you fairly decent knowledge in Android modding world, we're definitely not going to explain every step here, visit XDA and other resources for additional information/help with below.

Prerequisites:

  • Install official Steam app from store, if you haven't yet.
  • Assign authenticator to your account and ensure it works - generates valid tokens and can accept confirmations.

Extraction (requires rooting your device):

Now that you've successfully extracted required details, disable the module to prevent the window from showing each time, then copy value of shared_secret and identity_secret of the account that you intend to add to ASF 2FA, into a new text file with below structure:

{
  "shared_secret": "STRING",
  "identity_secret": "STRING"
}

Replace each STRING value with appropriate private key from extracted details. Once you do that, rename the file to BotName.maFile, where BotName is the name of your bot you're adding ASF 2FA to, and put it in ASF's config directory if you haven't yet. Afterwards, launch ASF - it should notice the .maFile and import it.

[*] 정보: ImportAuthenticator() <1> .maFile을 ASF 형식으로 변환하는 중...
[*] 정보: ImportAuthenticator() <1> 모바일 인증기 가져오기를 성공적으로 완료했습니다!

That's all, assuming that you've imported the correct file with valid secrets, everything should work properly, which you can verify by using 2fa commands. 실수를 했다면, 언제든 필요한만큼 Bot.db를 삭제하고 다시 시작할 수 있습니다.


SteamDesktopAuthenticator

이미 SDA에서 실행되는 인증기가 있다면 maFiles 폴더에 steamID.maFile 파일이 있음을 알것입니다. Make sure that maFile is in unencrypted form, as ASF can't decrypt SDA files - unencrypted file content should start with { and end with } character. If needed, you can remove the encryption from SDA settings first, and enable it again when you're done. Once the file is in unencrypted form, copy it to config directory of ASF.

You can now rename steamID.maFile to BotName.maFile in ASF config directory, where BotName is the name of your bot you're adding ASF 2FA to. 또는 그대로 둘 수도 있습니다. ASF는 로그인 후 자동으로 선택할 것입니다. Renaming the file helps ASF by making it possible to use ASF 2FA before logging in, if you don't do that, then the file can be picked only after ASF successfully logs in (as ASF doesn't know steamID of your account before in fact logging in).

모든 것을 정확하게 했다면 ASF를 실행하고 다음화면을 보게 됩니다.

[*] 정보: ImportAuthenticator() <1> .maFile을 ASF 형식으로 변환하는 중...
[*] 정보: ImportAuthenticator() <1> 모바일 인증기 가져오기를 성공적으로 완료했습니다!

이제부터 이 계정의 ASF 2단계 인증이 작동하게됩니다.


WinAuth

먼저 새로운 빈 봇이름.maFile 파일을 ASF 환경설정 디렉토리에 생성하십시오. 봇이름은 ASF 2단계 인증을 추가하려는 봇의 이름입니다. 파일명은 봇이름.maFile.txt가 아닌 봇이름.maFile이어야 함을 명심하십시오. 윈도우에서 알려진 확장자는 기본적으로 숨겨집니다. 부정확한 이름을 넣으면 ASF가 선택하지 않습니다.

이제 평소처럼 WinAuth를 실행하십시오. Steam 아이콘을 오른쪽 클릭하고 "Show SteamGuard and Recovery Code"를 선택하십시오. 그리고 "Allow copy"에 체크합니다. {로 시작하는 친숙한 JSON 구조가 창의 아래쪽에 나타납니다. 이전 단계에서 생성한 봇이름.maFile 파일에 전체 텍스트를 복사해 넣습니다.

모든 것을 정확하게 했다면 ASF를 실행하고 다음화면을 보게 됩니다.

[*] 정보: ImportAuthenticator() <1> .maFile을 ASF 형식으로 변환하는 중...
[*] 정보: ImportAuthenticator() <1> 모바일 인증기 가져오기를 성공적으로 완료했습니다!

이제부터 이 계정의 ASF 2단계 인증이 작동하게됩니다.


완료

지금부터 모든 2fa 명령어가 기존의 2단계 인증 기기에서 호출한 것 처럼 작동할 것입니다. You can use both ASF 2FA and your authenticator of choice (Android, SDA or WinAuth) to generate tokens and accept confirmations.

전화기에 인증기가 있다면 SteamDesktopAuthenticator 와 WinAuth는 더이상 필요가 없으므로 삭제해도 됩니다. 하지만 만일을 대비해서 남겨두길 권장합니다. 일반적인 스팀 인증기보다 더 편리한 것은 말할것도 없습니다. Just keep in mind that ASF 2FA is NOT a general purpose authenticator, it doesn't include all data that authenticator should have, but limited subset of original maFile. It's not possible to convert ASF 2FA back to original authenticator, therefore always make sure that you have general-purpose authenticator or maFile in other place, such as in WinAuth/SDA, or on your phone.


자주 묻는 질문(FAQ)

ASF가 2단계 인증 모듈을 어떻게 사용합니까?

ASF 2단계 인증을 사용할 수 있으면 ASF는 ASF가 보내거나 받는 거래의 자동 수락에 2단계 인증을 사용합니다. 예를 들어 로그인 같이 필요에 따라 2단계 인증 토큰을 자동으로 생성할 수도 있습니다. 또한, ASF 2단계 인증은 2fa 명령어를 사용가능하게 합니다. 제가 까먹지 않았다면 지금은 이게 전부입니다. 기본적으로 ASF는 필요에 따라 2단계 인증 모듈을 사용합니다.


2단계 인증 토큰이 필요하면 어떻게 합니까?

2단계 인증으로 보호된 계정에 접근하려면 2단계 인증 토큰이 필요합니다. 이는 ASF 2단계 인증이 있는 모든 계정을 포함합니다. 가져온 인증기에서 토큰을 생성해야 하지만, 해당 봇에 대화로 2fa 명령어를 보내 임시 토큰을 생성할 수도 있습니다. 해당 봇 인스턴스에 임시 토큰을 생성하기 위해 2fa <봇이름> 명령을 사용할 수도 있습니다. This should be enough for you to access bot accounts through e.g. browser, but as noted above - you should use your friendly authenticator (Android, SDA or WinAuth) instead.


ASF 2단계 인증으로 가져온 후에도 원래 인증기를 사용할 수 있습니까?

네. 원래 인증기도 정상작동하며 ASF 2단계 인증과 함께 사용할 수 있습니다. 바로 그것이 전체 프로세스입니다. 당신 인증기의 자격증명을 ASF로 가져오고, ASF는 이를 이용하여 당신을 대신해 선택된 확인사항을 승낙합니다.


ASF 모바일 인증기는 어디에 저장됩니까?

ASF 모바일 인증기는 해당 계정에 관련된 중요한 다른 데이터와 함께 환경설정 디렉토리의 봇이름.db 파일에 저장됩니다. ASF 2단계 인증을 제거하려면, 아래 내용을 읽어보십시오.


ASF 2단계 인증을 제거하려면 어떻게 해야 합니까?

그냥 ASF를 중지하고 제거하려는 ASF 2단계 인증과 연결된 봇의 봇이름.db 파일을 삭제하십시오. 이렇게 하면 ASF로 가져온 2단계 인증은 제거되지만 인증기와의 연결을 끊지는 않습니다. If you instead want to delink your authenticator, apart from removing it from ASF (firstly), you should delink it in authenticator of your choice (Android, SDA or WinAuth), or - if you can't for some reason, use revocation code that you received during linking that authenticator, on the Steam website. ASF에서 인증기의 연결을 끊는 것은 불가능합니다. 이는 당신이 기존에 가지고 있는 범용 인증기를 사용해야 할 부분입니다.


SDA/WinAuth에 인증기를 연결하고 ASF로 가져왔습니다. 이 연결을 끊고 전화기로 다시 연결할 수 있습니까?

아니오. ASF는 인증기 정보를 사용하기 위해 그 정보를 가져옵니다. 위의 질문에서처럼 먼저 ASF 2단계 인증을 제거하는 것과 상관없이, 인증기와 연결을 끊게 되면 ASF 2단계 인증도 기능을 멈추게 됩니다. 인증기를 전화기와 ASF(추가로 SDA/WinAuth) 양쪽에서 사용하고 싶다면 SDA/WinAuth에서 인증기를 생성하지 말고 전화기에서 인증기를 가져와야 합니다. 오직 하나의 인증기만 연결할 수 있습니다. ASF는 ASF 2단계 인증에서 사용하기 위해 그 인증기와 데이터를 가지고 옵니다. 동일한 인증기가, 그냥 두 곳에 있는 것 뿐입니다. 어떤 방식으로든 모바일 인증기 자격증명의 연결을 끊기로 결정했다면, 이전에 복사한 모바일 인증기 자격증명은 더이상 유효하지 않으므로 ASF 2단계 인증은 작동을 멈출것입니다. In order to use ASF 2FA together with authenticator on your phone, you must import it from Android, which is described above.


ASF 2단계 인증이 모든 확인사항을 수락하는데 있어 WinAuth/SDA/기타 인증기보다 낫습니까?

여러가지 측면에서 그렇습니다. 첫째, 그리고 가장 중요한 것은 ASF 2단계 인증은 보안을 상당히 증가시킵니다. ASF 2단계 인증 모듈은 ASF 자체의 확인사항만을 수락하므로, 공격자가 해로운 거래를 요청한다고 해도 ASF 2단계 인증은 ASF가 생성한 것이 아니기 때문에 그러한 거래를 수락하지 않습니다. 보안 측면에 추가해서, ASF 2단계 인증을 사용하면 성능/최적화 효과도 있습니다. SDA나 WinAuth등은 매 X분동안의 확인사항을 비효율적으로 모으는데 비해 ASF 2단계 인증은 확인사항이 생성되면 즉시 가져와서 수락합니다. 즉, ASF에서 생성된 확인사항을 자동화하려면 ASF 2단계 인증 대신 서드 파티 인증기를 사용할 이유가 없습니다. 이것이 ASF 2단계 인증의 존재이유이고, 당신이 사용하는 인증기로 그외의 것들을 확인하는데 아무런 지장을 주지 않습니다. 전체 ASF 활동에 ASF 2단계 인증을 사용하기를 강력하게 권장합니다. 다른 어떤 솔루션모다 훨씬 더 안전합니다.


고급

고급사용자의 경우, 직접 maFile을 수동으로 생성할 수 있습니다. This can be used in case you'd want to import authenticator from other sources than the ones we've described above. 파일은 **유효한 JSON 구조**를 가져야 합니다:

{
  "shared_secret": "STRING",
  "identity_secret": "STRING"
}

표준 인증기 데이터는 더 많은 항목이 있지만, ASF의 가져오기 단계에서 모두 무시되므로 필요하지 않습니다. 그렇다고 삭제할 필요는 없습니다. ASF는 위에서 설명한 2개의 필수 항목만 필요로 하고, 그 외 추가 항목은(있다면) 무시할 것입니다. Of course, you need to replace STRING placeholder in the example above with valid values for your account. Each STRING should be base64-encoded representation of bytes the appropriate private key is made of.

Clone this wiki locally