Skip to content

Two factor authentication ko KR

ArchiBot edited this page May 14, 2025 · 37 revisions

2단계 인증

Steam includes two-factor authentication system 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 2FA on Steam. 예λ₯Ό λ“€μ–΄ 둜그인 쀑에도 ν•„μš”ν•˜λ©΄ 세뢀사항을 μž…λ ₯ν•˜λ„λ‘ μš”μ²­ν•  κ²ƒμž…λ‹ˆλ‹€. While you can manually provide that information, certain ASF functionalities (such as MatchActively) require ASF 2FA to be operative on your bot account, which can automatically respond to 2FA prompts, automatically, whenever required by ASF.


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 either in standalone mode, 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단계 인증을 μ‚¬μš©μ€‘μΈμ§€ 확인할 수 μžˆμŠ΅λ‹ˆλ‹€. Without setting up ASF 2FA, all standard 2fa commands will be non-operative, which means that your bot is 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 unofficial 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 written here, and is arguably superior for this scenario.
  • 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, we recommend you to use ASF 2FA with standalone authenticator or joint authenticator with official app (same as above).

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


Creation

ASF comes with an official MobileAuthenticator plugin that further extends ASF 2FA, allowing you to link a completely new 2FA authenticator. 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. Creation process is also used in joint-authenticator method, naturally in this scenario your authenticator can co-exist in two places at once - both will generate the same codes and both will be able to confirm the same confirmations.

Common steps for both scenarios

No matter if you plan to use ASF as the standalone or joint authenticator, 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. 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. This step is not mandatory in all scenarios, however, we recommend it unless you know what you're doing.
  3. Ensure you're not using 2FA yet for your account, if you do, disable it first. This will put your account on temporary trade-hold, there is no way around it, only import process can skip it.
  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 final 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, more tricky steps:

  1. Ignore the SMS or e-mail code that you've received in 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. Now, instead of finalization, we only need to inform ASF that mobile app already activated our previously-generated details:
  • Wait until the next 2FA code is shown in the Steam mobile app, and use the command 2fafinalized [Bot] <2FACodeFromApp> replacing [Bot] with your bot's name and <2FACodeFromApp> with the code you currently see in the Steam mobile app. If the code generated by ASF and the code you provided are equal, ASF will assume that an authenticator was added correctly and proceed 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. Be aware that in this mode ASF is unable to verify if the codes match, which means that you can potentially import invalid (not activated) credentials.

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 move that file to a secure and safe location. In addition to that, if you've decided to use standalone authenticator, then we recommend you to 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 joint-authenticator method, you should've already done that in Steam mobile app, but feel free to do the same in case you need to.

In regards to technical details, the generated maFile includes all details that we've received from the Steam server during linking the authenticator, and in addition to that, the device_id field, which may be needed for other (third-party) authenticators, if you ever decide to import that maFile into them.

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. We recommend you to verify that.


뢈러였기

Import process requires already linked and operational authenticator that is supported by ASF. We have instructions for a few different official and unofficial sources of 2FA, on top of manual method which allows you to provide required credentials yourself. Please note that those instructions should be used only if you're already using given solution - since process here involves third-party apps and tools, we do not recommend using them, and we're mentioning it exclusively for people that already decided to use them and would like to import generated details into ASF 2FA.

μ•„λž˜μ˜ λͺ¨λ“  κ°€μ΄λ“œλŠ” μ •μƒλ™μž‘ν•˜κ³  μžˆλŠ” 인증기λ₯Ό ν•„μš”λ‘œ ν•©λ‹ˆλ‹€. μœ νš¨ν•˜μ§€ μ•Šμ€ 데이터λ₯Ό κ°€μ Έμ˜€λ©΄ ASF 2단계 인증은 μ •μƒμ μœΌλ‘œ λ™μž‘ν•˜μ§€ μ•Šμ„κ²ƒμ΄λ―€λ‘œ 데이터λ₯Ό κ°€μ Έμ˜€κΈ° 전에 인증기가 정상 μž‘λ™ν•˜λŠ”μ§€ ν™•μΈν•˜μ—¬μ•Ό ν•©λ‹ˆλ‹€. λ‹€μŒμ˜ 인증기 κΈ°λŠ₯이 정상 μž‘λ™ν•˜λŠ”μ§€ ν…ŒμŠ€νŠΈν•˜κ³  ν™•μΈν•˜μ‹­μ‹œμ˜€.

  • You can generate tokens and those tokens are accepted by Steam network (you can log in with them)
  • 확인사항을 κ°€μ Έμ˜€κ³ , λͺ¨λ°”일 인증기에 λ„μ°©ν• μˆ˜ μžˆμ–΄μ•Ό 함
  • You can react to those confirmations, and they're properly recognized by Steam network as confirmed/rejected

Ensure that your authenticator works by checking if above actions work - if they don't, then they won't work in ASF either.


μ•ˆλ“œλ‘œμ΄λ“œ μ „ν™”κΈ°

In general for importing authenticator from your Android phone you will need root access. 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.

Assuming you have official Steam app working and operational (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.

Launch ASF, which should notice your file and import it. 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).

Launch ASF, which should notice your file and import it. 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λ₯Ό μ‚­μ œν•˜κ³  λ‹€μ‹œ μ‹œμž‘ν•  수 μžˆμŠ΅λ‹ˆλ‹€.


WinAuth

λ¨Όμ € μƒˆλ‘œμš΄ 빈 봇이름.maFile νŒŒμΌμ„ ASF ν™˜κ²½μ„€μ • 디렉토리에 μƒμ„±ν•˜μ‹­μ‹œμ˜€. 봇이름은 ASF 2단계 인증을 μΆ”κ°€ν•˜λ €λŠ” λ΄‡μ˜ μ΄λ¦„μž…λ‹ˆλ‹€. λΆ€μ •ν™•ν•œ 이름을 λ„£μœΌλ©΄ ASFκ°€ μ„ νƒν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.

이제 ν‰μ†Œμ²˜λŸΌ WinAuthλ₯Ό μ‹€ν–‰ν•˜μ‹­μ‹œμ˜€. Steam μ•„μ΄μ½˜μ„ 였λ₯Έμͺ½ ν΄λ¦­ν•˜κ³  "Show SteamGuard and Recovery Code"λ₯Ό μ„ νƒν•˜μ‹­μ‹œμ˜€. 그리고 "Allow copy"에 μ²΄ν¬ν•©λ‹ˆλ‹€. {둜 μ‹œμž‘ν•˜λŠ” μΉœμˆ™ν•œ JSON ꡬ쑰가 창의 μ•„λž˜μͺ½μ— λ‚˜νƒ€λ‚©λ‹ˆλ‹€. 이전 λ‹¨κ³„μ—μ„œ μƒμ„±ν•œ 봇이름.maFile νŒŒμΌμ— 전체 ν…μŠ€νŠΈλ₯Ό 볡사해 λ„£μŠ΅λ‹ˆλ‹€.

Launch ASF, which should notice your file and import it. 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λ₯Ό μ‚­μ œν•˜κ³  λ‹€μ‹œ μ‹œμž‘ν•  수 μžˆμŠ΅λ‹ˆλ‹€.


Manual

κ³ κΈ‰μ‚¬μš©μžμ˜ 경우, 직접 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의 κ°€μ Έμ˜€κΈ° λ‹¨κ³„μ—μ„œ λͺ¨λ‘ λ¬΄μ‹œλ˜λ―€λ‘œ ν•„μš”ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. You don't need to remove them - ASF only requires valid JSON with 2 mandatory fields described above, and will ignore additional fields (if any). 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.


자주 λ¬»λŠ” 질문(FAQ)

ASFκ°€ 2단계 인증 λͺ¨λ“ˆμ„ μ–΄λ–»κ²Œ μ‚¬μš©ν•©λ‹ˆκΉŒ?

ASF 2단계 인증을 μ‚¬μš©ν•  수 있으면 ASFλŠ” ASFκ°€ λ³΄λ‚΄κ±°λ‚˜ λ°›λŠ” 거래의 μžλ™ μˆ˜λ½μ— 2단계 인증을 μ‚¬μš©ν•©λ‹ˆλ‹€. 예λ₯Ό λ“€μ–΄ 둜그인 같이 ν•„μš”μ— 따라 2단계 인증 토큰을 μžλ™μœΌλ‘œ 생성할 μˆ˜λ„ μžˆμŠ΅λ‹ˆλ‹€. λ˜ν•œ, ASF 2단계 인증은 2fa λͺ…λ Ήμ–΄λ₯Ό μ‚¬μš©κ°€λŠ₯ν•˜κ²Œ ν•©λ‹ˆλ‹€.


How can I obtain 2FA token?

2단계 인증으둜 보호된 계정에 μ ‘κ·Όν•˜λ €λ©΄ 2단계 인증 토큰이 ν•„μš”ν•©λ‹ˆλ‹€. μ΄λŠ” ASF 2단계 인증이 μžˆλŠ” λͺ¨λ“  계정을 ν¬ν•¨ν•©λ‹ˆλ‹€. If you've decided to use standalone authenticator, then you should use 2fa <BotNames> command to generate temporary token for given bot instances. In all other scenarios, we recommend to use original authenticator that you've used, although you can use the command as well if it's more convenient to you.


ASF 2단계 인증으둜 κ°€μ Έμ˜¨ 후에도 μ›λž˜ 인증기λ₯Ό μ‚¬μš©ν•  수 μžˆμŠ΅λ‹ˆκΉŒ?

λ„€. μ›λž˜ 인증기도 μ •μƒμž‘λ™ν•˜λ©° ASF 2단계 인증과 ν•¨κ»˜ μ‚¬μš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€. Keep in mind however that if you invalidate it through any method, then linked ASF 2FA credentials will also no longer be valid.


ASF 2단계 인증을 μ œκ±°ν•˜λ €λ©΄ μ–΄λ–»κ²Œ ν•΄μ•Ό ν•©λ‹ˆκΉŒ?

κ·Έλƒ₯ ASFλ₯Ό μ€‘μ§€ν•˜κ³  μ œκ±°ν•˜λ €λŠ” ASF 2단계 인증과 μ—°κ²°λœ λ΄‡μ˜ 봇이름.db νŒŒμΌμ„ μ‚­μ œν•˜μ‹­μ‹œμ˜€. This option will remove associated imported 2FA with ASF, but will NOT invalidate (unlink) your authenticator. If you instead want to invalidate your authenticator, apart from removing it from ASF (firstly), you should unlink it in original authenticator of your choice. If you can't do that for some reason, for example because you're using ASF 2FA in standalone mode, then use revocation code that you've received during setup, on the Steam website. It's not possible to invalidate your authenticator through ASF.


I linked authenticator in third-party app, then imported to ASF. Can I now link it again on my phone?

μ•„λ‹ˆμ˜€. Doing so will invalidate the previously imported credentials and your ASF 2FA will stop functioning (by generating codes no longer being accepted by Steam). Firstly decide where you want to have your original or third-party authenticator located, then import it as ASF 2FA.


Is using ASF 2FA better than third-party authenticator set to accept all confirmations?

μ—¬λŸ¬κ°€μ§€ μΈ‘λ©΄μ—μ„œ κ·Έλ ‡μŠ΅λ‹ˆλ‹€. 첫째, 그리고 κ°€μž₯ μ€‘μš”ν•œ 것은 ASF 2단계 인증은 λ³΄μ•ˆμ„ μƒλ‹Ήνžˆ μ¦κ°€μ‹œν‚΅λ‹ˆλ‹€. ASF 2단계 인증 λͺ¨λ“ˆμ€ ASF 자체의 ν™•μΈμ‚¬ν•­λ§Œμ„ μˆ˜λ½ν•˜λ―€λ‘œ, κ³΅κ²©μžκ°€ ν•΄λ‘œμš΄ 거래λ₯Ό μš”μ²­ν•œλ‹€κ³  해도 ASF 2단계 인증은 ASFκ°€ μƒμ„±ν•œ 것이 μ•„λ‹ˆκΈ° λ•Œλ¬Έμ— κ·ΈλŸ¬ν•œ 거래λ₯Ό μˆ˜λ½ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. In addition to security part, using ASF 2FA also brings performance/optimization benefits, as ASF 2FA fetches and accepts confirmations immediately after they're generated, and only then, as opposed to inefficient polling for confirmations each X minutes which is achieved by other solutions. There is no reason to use third-party authenticator over ASF 2FA, if you plan on automating confirmations generated by ASF - that's exactly what ASF 2FA is for, and using it does not conflict with you confirming everything else in authenticator of your choice. We strongly recommend to use ASF 2FA for entire ASF activity.

Clone this wiki locally