Alpha Software Mobile Development Tools:   Alpha Anywhere    |   Alpha TransForm subscribe to our YouTube Channel  Follow Us on LinkedIn  Follow Us on Twitter  Follow Us on Facebook

Announcement

Collapse

The Alpha Software Forum Participation Guidelines

The Alpha Software Forum is a free forum created for Alpha Software Developer Community to ask for help, exchange ideas, and share solutions. Alpha Software strives to create an environment where all members of the community can feel safe to participate. In order to ensure the Alpha Software Forum is a place where all feel welcome, forum participants are expected to behave as follows:
  • Be professional in your conduct
  • Be kind to others
  • Be constructive when giving feedback
  • Be open to new ideas and suggestions
  • Stay on topic


Be sure all comments and threads you post are respectful. Posts that contain any of the following content will be considered a violation of your agreement as a member of the Alpha Software Forum Community and will be moderated:
  • Spam.
  • Vulgar language.
  • Quotes from private conversations without permission, including pricing and other sales related discussions.
  • Personal attacks, insults, or subtle put-downs.
  • Harassment, bullying, threatening, mocking, shaming, or deriding anyone.
  • Sexist, racist, homophobic, transphobic, ableist, or otherwise discriminatory jokes and language.
  • Sexually explicit or violent material, links, or language.
  • Pirated, hacked, or copyright-infringing material.
  • Encouraging of others to engage in the above behaviors.


If a thread or post is found to contain any of the content outlined above, a moderator may choose to take one of the following actions:
  • Remove the Post or Thread - the content is removed from the forum.
  • Place the User in Moderation - all posts and new threads must be approved by a moderator before they are posted.
  • Temporarily Ban the User - user is banned from forum for a period of time.
  • Permanently Ban the User - user is permanently banned from the forum.


Moderators may also rename posts and threads if they are too generic or do not property reflect the content.

Moderators may move threads if they have been posted in the incorrect forum.

Threads/Posts questioning specific moderator decisions or actions (such as "why was a user banned?") are not allowed and will be removed.

The owners of Alpha Software Corporation (Forum Owner) reserve the right to remove, edit, move, or close any thread for any reason; or ban any forum member without notice, reason, or explanation.

Community members are encouraged to click the "Report Post" icon in the lower left of a given post if they feel the post is in violation of the rules. This will alert the Moderators to take a look.

Alpha Software Corporation may amend the guidelines from time to time and may also vary the procedures it sets out where appropriate in a particular case. Your agreement to comply with the guidelines will be deemed agreement to any changes to it.



Bonus TIPS for Successful Posting

Try a Search First
It is highly recommended that a Search be done on your topic before posting, as many questions have been answered in prior posts. As with any search engine, the shorter the search term, the more "hits" will be returned, but the more specific the search term is, the greater the relevance of those "hits". Searching for "table" might well return every message on the board while "tablesum" would greatly restrict the number of messages returned.

When you do post
First, make sure you are posting your question in the correct forum. For example, if you post an issue regarding Desktop applications on the Mobile & Browser Applications board , not only will your question not be seen by the appropriate audience, it may also be removed or relocated.

The more detail you provide about your problem or question, the more likely someone is to understand your request and be able to help. A sample database with a minimum of records (and its support files, zipped together) will make it much easier to diagnose issues with your application. Screen shots of error messages are especially helpful.

When explaining how to reproduce your problem, please be as detailed as possible. Describe every step, click-by-click and keypress-by-keypress. Otherwise when others try to duplicate your problem, they may do something slightly different and end up with different results.

A note about attachments
You may only attach one file to each message. Attachment file size is limited to 2MB. If you need to include several files, you may do so by zipping them into a single archive.

If you forgot to attach your files to your post, please do NOT create a new thread. Instead, reply to your original message and attach the file there.

When attaching screen shots, it is best to attach an image file (.BMP, .JPG, .GIF, .PNG, etc.) or a zip file of several images, as opposed to a Word document containing the screen shots. Because Word documents are prone to viruses, many message board users will not open your Word file, therefore limiting their ability to help you.

Similarly, if you are uploading a zipped archive, you should simply create a .ZIP file and not a self-extracting .EXE as many users will not run your EXE file.
See more
See less

Password Encryption (Alpha Implementation)

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    #16
    Re: Password Encryption (Alpha Implementation)

    I had tried this a couple of months ago and was not able to get it to work. Steve mentioned key length, mine was much shorter, maybe if your key is shorter than 256b then alpha pads it. I wonder if this is going to change since this is not supposed to work. I don't want to change things only to have to change back.
    Win 10 64 Development, Win 7 64 WAS 11-1, 2, Win 10 64 AA-1,2, MySql, dbForge Studio The Best MySQL GUI Tool IMHO. http://www.devart.com/dbforge/mysql/studio/

    Comment


      #17
      Re: Password Encryption (Alpha Implementation)

      Originally posted by jdrake View Post
      To be honest this isn't even close to being secure. If your "key" gets found then a hacker could get all your passwords in plain text and if people use them for other things then they are in trouble. There have been many well documented high profile hacks of this. This is why people who really know security only use 1 way hashes, then the hacker would need to have lots of rainbow tables to figure out what the plain text is.
      How could someone find your key?
      It seems to me that it is locked away in the alpha application far from user interface.
      To be able to 'guess' with that long of a key seems almost impossible.
      Win 10 64 Development, Win 7 64 WAS 11-1, 2, Win 10 64 AA-1,2, MySql, dbForge Studio The Best MySQL GUI Tool IMHO. http://www.devart.com/dbforge/mysql/studio/

      Comment


        #18
        Re: Password Encryption (Alpha Implementation)

        Originally posted by frankbicknell View Post
        I had tried this a couple of months ago and was not able to get it to work. Steve mentioned key length, mine was much shorter, maybe if your key is shorter than 256b then alpha pads it. I wonder if this is going to change since this is not supposed to work. I don't want to change things only to have to change back.
        This would also be my guess - that short key lengths get padded by Alpha.
        Who wants to find the magic number? :) hahahah.

        Anyways - thanks for the input guys.
        Scott Moniz - Computer Programmer/Analyst
        REA Inc.
        http://reainc.net
        (416)-533-3777
        [email protected]

        REA INC offers consulting services, programming services, systems design, database design, third party payment gateway integration (CHASE, PAYPAL, AUTHORIZE.NET) and developer support.
        If you need custom code, or 1-to-1 mentoring in any facet of your database/web application design,
        contact us to discuss options.

        Comment


          #19
          Re: Password Encryption (Alpha Implementation)

          Originally posted by frankbicknell View Post
          How could someone find your key?
          It seems to me that it is locked away in the alpha application far from user interface.
          To be able to 'guess' with that long of a key seems almost impossible.
          My guess is that the key is stored in some sort of config file - but it encrypted. Or in some folder outside the webroot.
          Keys can be gained access too, and usually this is half the battle.
          Encrypting is one half, protecting the key is the other.
          Scott Moniz - Computer Programmer/Analyst
          REA Inc.
          http://reainc.net
          (416)-533-3777
          [email protected]

          REA INC offers consulting services, programming services, systems design, database design, third party payment gateway integration (CHASE, PAYPAL, AUTHORIZE.NET) and developer support.
          If you need custom code, or 1-to-1 mentoring in any facet of your database/web application design,
          contact us to discuss options.

          Comment


            #20
            Re: Password Encryption (Alpha Implementation)

            Originally posted by frankbicknell View Post
            How could someone find your key?
            It seems to me that it is locked away in the alpha application far from user interface.
            To be able to 'guess' with that long of a key seems almost impossible.
            My problem with this is that it is using reversible encryption, this is a big no-no for storing passwords in this manner in today's world. It really isn't locked away, anyone with a dev copy of alpha on your network can see it w/ no problem.

            Comment


              #21
              Re: Password Encryption (Alpha Implementation)

              Originally posted by jdrake View Post
              My problem with this is that it is using reversible encryption, this is a big no-no for storing passwords in this manner in today's world. It really isn't locked away, anyone with a dev copy of alpha on your network can see it w/ no problem.
              Completely disagree. Encryption (which by definition is reversible [vs hashing]) is used all over the world.
              HTTPS packets are encrypted/decrypted.

              Thats like saying 'locks on doors are a big no no', when you need to get in/out of the house, you use your key. Just because a thief can break into your house, does not mean that locks are a big no no. Thats like saying 'locks are a big no no because any thief with your key can get into your house'...ya well, protect your key.

              Anyhow - just my 2 cents.
              Scott Moniz - Computer Programmer/Analyst
              REA Inc.
              http://reainc.net
              (416)-533-3777
              [email protected]

              REA INC offers consulting services, programming services, systems design, database design, third party payment gateway integration (CHASE, PAYPAL, AUTHORIZE.NET) and developer support.
              If you need custom code, or 1-to-1 mentoring in any facet of your database/web application design,
              contact us to discuss options.

              Comment


                #22
                Re: Password Encryption (Alpha Implementation)

                Originally posted by aburningflame View Post
                Completely disagree. Encryption (which by definition is reversible [vs hashing]) is used all over the world.
                HTTPS packets are encrypted/decrypted.

                Thats like saying 'locks on doors are a big no no', when you need to get in/out of the house, you use your key. Just because a thief can break into your house, does not mean that locks are a big no no. Thats like saying 'locks are a big no no because any thief with your key can get into your house'...ya well, protect your key.

                Anyhow - just my 2 cents.
                HTTPS is completely different than storing a password in a database. HTTPS has to be decrypted for the server and user to talk to each other. There is no reason why a password has to be decrypted. You don't have to believe me but this is de facto information security standard that I learned in information security 101 back in college.

                I searched google and this is is the first site that came up, with millions of other security sites also saying the same thing.

                http://www.jasypt.org/howtoencryptuserpasswords.html

                So, we have to encrypt passwords, but... how? Here comes our first rule:

                I. Encrypt passwords using one-way techniques, this is, digests.

                This is because, except for some specific scenarios (mainly regarding legacy integration), there is absolutely no reason for a password being decrypted. If you encrypt your passwords using password-based encryption (a two-way technique) and an attacker gets to know your encryption password, all of your user passwords will be revealed (and, probably, all at a time). If you don't have such encryption password (or key) to be able to decrypt, this risk disappears, and the attacker will have to trust on brute force or similar strategies.

                Comment


                  #23
                  Re: Password Encryption (Alpha Implementation)

                  Originally posted by jdrake View Post
                  My problem with this is that it is using reversible encryption, this is a big no-no for storing passwords in this manner in today's world. It really isn't locked away, anyone with a dev copy of alpha on your network can see it w/ no problem.
                  Maybe an additional feature from alpha would be to password protect the key.

                  Scott thanks for pointing that out about the house locks, I was thinking about filling all the key holes with epoxy, then let them try to break in.......
                  Win 10 64 Development, Win 7 64 WAS 11-1, 2, Win 10 64 AA-1,2, MySql, dbForge Studio The Best MySQL GUI Tool IMHO. http://www.devart.com/dbforge/mysql/studio/

                  Comment


                    #24
                    Re: Password Encryption (Alpha Implementation)

                    Originally posted by jdrake View Post
                    HTTPS is completely different than storing a password in a database. HTTPS has to be decrypted for the server and user to talk to each other. There is no reason why a password has to be decrypted. You don't have to believe me but this is de facto information security standard that I learned in information security 101 back in college.

                    I searched google and this is is the first site that came up, with millions of other security sites also saying the same thing.

                    http://www.jasypt.org/howtoencryptuserpasswords.html
                    I completely agree with you jdrake.

                    "There is no reason why a password has to be decrypted" - the above was assuming there was a case that required the password to be decrypted.

                    If you do not need to ever see the original password - use a 1way hashing algorithm with a salt (although MD5 has been known to be cracked)
                    http://news.slashdot.org/story/04/08...Rumored-Broken

                    But say you are encrypting something like a SIN number - or anything else you need to be reversible - the above applies.


                    Anyways - regardless, at least a function to 1way hash the password IS required for us developers.
                    Something like this

                    dim ranpass_hashed as C=alpha_please_encrypt_this_i_need_this_functionality(generated_random_pass,my_key)

                    I dont care about the decrypt function.
                    Scott Moniz - Computer Programmer/Analyst
                    REA Inc.
                    http://reainc.net
                    (416)-533-3777
                    [email protected]

                    REA INC offers consulting services, programming services, systems design, database design, third party payment gateway integration (CHASE, PAYPAL, AUTHORIZE.NET) and developer support.
                    If you need custom code, or 1-to-1 mentoring in any facet of your database/web application design,
                    contact us to discuss options.

                    Comment


                      #25
                      Re: Password Encryption (Alpha Implementation)

                      From your article:
                      This is because, except for some specific scenarios (mainly regarding legacy integration), there is absolutely no reason for a password being decrypted
                      Scott Moniz - Computer Programmer/Analyst
                      REA Inc.
                      http://reainc.net
                      (416)-533-3777
                      [email protected]

                      REA INC offers consulting services, programming services, systems design, database design, third party payment gateway integration (CHASE, PAYPAL, AUTHORIZE.NET) and developer support.
                      If you need custom code, or 1-to-1 mentoring in any facet of your database/web application design,
                      contact us to discuss options.

                      Comment


                        #26
                        Re: Password Encryption (Alpha Implementation)

                        Thanks for the discussion and the lesson in security. I was completely wrong in my understanding of the purpose of the password. I agree now that there is no need to decrypt a password.
                        I am still confused about how the encryption process works when you have your security tables active linked to sql tables. How can I use the sql security tables with password encryption enabled? I was told that the methods previously discussed will no longer work in V11.
                        Win 10 64 Development, Win 7 64 WAS 11-1, 2, Win 10 64 AA-1,2, MySql, dbForge Studio The Best MySQL GUI Tool IMHO. http://www.devart.com/dbforge/mysql/studio/

                        Comment


                          #27
                          Re: Password Encryption (Alpha Implementation)

                          Originally posted by frankbicknell View Post
                          Thanks for the discussion and the lesson in security. I was completely wrong in my understanding of the purpose of the password. I agree now that there is no need to decrypt a password.
                          I am still confused about how the encryption process works when you have your security tables active linked to sql tables. How can I use the sql security tables with password encryption enabled? I was told that the methods previously discussed will no longer work in V11.
                          I use the a5_save_web_user_values ..and alpha will internally encrypt for me.
                          The other option is to just use your own security and own security restrictions (which kind of makes the grid security groups etc etc useless)
                          Scott Moniz - Computer Programmer/Analyst
                          REA Inc.
                          http://reainc.net
                          (416)-533-3777
                          [email protected]

                          REA INC offers consulting services, programming services, systems design, database design, third party payment gateway integration (CHASE, PAYPAL, AUTHORIZE.NET) and developer support.
                          If you need custom code, or 1-to-1 mentoring in any facet of your database/web application design,
                          contact us to discuss options.

                          Comment


                            #28
                            Re: Password Encryption (Alpha Implementation)

                            Thanks Scott,

                            Any idea of where I can find the help on that? I searched the local, online, and wiki help files and got no hits.
                            Win 10 64 Development, Win 7 64 WAS 11-1, 2, Win 10 64 AA-1,2, MySql, dbForge Studio The Best MySQL GUI Tool IMHO. http://www.devart.com/dbforge/mysql/studio/

                            Comment


                              #29
                              Re: Password Encryption (Alpha Implementation)

                              We can be sure that Alpha's intention is that the password cannot be decrypted or even accessed outside of what is built in. Far as I know the only place to recover the password is the "Lost Password" link on the Login dialog. There are no other functions that retrieve the password. For sure, the password BELONGS to the user, not the developer or the owner of the application. That, I am sure is the reasoning behind why the password is not available even to the Developer.
                              Steve Wood
                              See my profile on IADN

                              Comment


                                #30
                                Re: Password Encryption (Alpha Implementation)

                                Originally posted by Steve Wood View Post
                                We can be sure that Alpha's intention is that the password cannot be decrypted or even accessed outside of what is built in. Far as I know the only place to recover the password is the "Lost Password" link on the Login dialog. There are no other functions that retrieve the password. For sure, the password BELONGS to the user, not the developer or the owner of the application. That, I am sure is the reasoning behind why the password is not available even to the Developer.
                                Fair enough - but then what is their reason to not provide a 1way encryption function?
                                If I, as a developer, want to insert a user with a random password - I have to use the save_web_user_values. This save_web_user_values, encrypts the plaintext password I sent it.
                                All i was asking for was the smaller chunk of save_web_user that actually does the encryption.
                                I dont care about inner workings, or decryption Just.

                                dim pass as C=substr(remspecial(api_uuidcreate()),1,8)
                                pass=a5ws_encrypt_password(pass)

                                But I guess they dont want to provide it.
                                Scott Moniz - Computer Programmer/Analyst
                                REA Inc.
                                http://reainc.net
                                (416)-533-3777
                                [email protected]

                                REA INC offers consulting services, programming services, systems design, database design, third party payment gateway integration (CHASE, PAYPAL, AUTHORIZE.NET) and developer support.
                                If you need custom code, or 1-to-1 mentoring in any facet of your database/web application design,
                                contact us to discuss options.

                                Comment

                                Working...
                                X