• Web3 developer Brian Guan lost $40,000 after accidentally posting his wallet’s secret keys publicly on GitHub, with the funds being drained in just two minutes.
  • The crypto community’s reactions were mixed, with some offering support and others mocking Guan’s previous comments about developers using AI tools like ChatGPT for coding.
  • This incident highlights ongoing debates about security practices and the role of AI in software development within the crypto community.
  • darklamer@lemmy.dbzer0.com
    link
    fedilink
    English
    arrow-up
    107
    ·
    4 months ago

    The developer said he forgot that his secret keys were in the repository.

    If you have your secret keys in your repository you’ve already fucked up, long before you accidentally make that repository public.

    • BrianTheeBiscuiteer@lemmy.world
      link
      fedilink
      English
      arrow-up
      27
      arrow-down
      1
      ·
      4 months ago

      One of the first things you should do in a repo is add a .gitignore file and make sure there are rules to ignore things like *secret* or *private* etc. Also, I pretty much never use git add . because I don’t like the laziness of it and EVERY TIME one of my coworkers checked in secrets they were using that command.

      • lurch (he/him)@sh.itjust.works
        link
        fedilink
        English
        arrow-up
        5
        ·
        4 months ago

        Even though that’s a good extra precaution, per person config data, such as keys, should be stored outside of the repo, eg. in the parent directory or better in the users home dir. There is zero reason to have it in the repo. Even if you use a VM/containers, you can add the config in an extra mount/share.

        • barsquid@lemmy.world
          link
          fedilink
          English
          arrow-up
          1
          ·
          4 months ago

          What’s the general consensus on storing encrypted data in the repo with the keys outside? I see people recommend that but I’m too paranoid and my secrets are very small in size so it hasn’t been necessary.

          • lurch (he/him)@sh.itjust.works
            link
            fedilink
            English
            arrow-up
            1
            ·
            edit-2
            4 months ago

            the format of the encrypted file can give the attackers an advantage. if your code reads the decrypted file, the attacker can guess the first line is a comment or the name of a setting. a savvy person can combine that with the algorithm to perform a “known plaintext attack”, for example by generating a number of possible passwords that would lead to files starting like that.

            • barsquid@lemmy.world
              link
              fedilink
              English
              arrow-up
              1
              ·
              4 months ago

              That’s smart. Anyone trying that should definitely have a machine-generated strong password!

      • sugar_in_your_tea@sh.itjust.works
        link
        fedilink
        English
        arrow-up
        1
        ·
        4 months ago

        git add -u is pretty nice, it only adds modified files.

        I usually do git add -p which is interactive (helps avoid committing debugging prints and whatnot), but the other is nice for bigger refactors.

      • JimmyMcGill@lemmy.world
        link
        fedilink
        English
        arrow-up
        1
        ·
        4 months ago

        I basically always do a git add -p

        Very useful command and it works with other git commands as well.

        Everytime a colleague asks me for help with git that’s the one rule I suggest them to use.

          • PumaStoleMyBluff@lemmy.world
            link
            fedilink
            English
            arrow-up
            2
            ·
            4 months ago

            Instead of just adding whole changed files, it starts an interactive mode where it shows every hunk of diffs one by one, and asks you to input yes or no for each change. Very helpful for doing your own mini code review or sanity check before you even commit.

            • iegod@lemm.ee
              link
              fedilink
              English
              arrow-up
              1
              ·
              4 months ago

              I use vscode with plugins and manually add my files now. The workflow is beautiful.

    • NOT_RICK@lemmy.world
      link
      fedilink
      English
      arrow-up
      10
      ·
      4 months ago

      And that’s why you always leave a note recheck your .gitignore file before committing