# List of the patterns to search for
declare -a git_verification_patterns     # Create an associative array
git_verification_patterns[0]="(\"|')?(AWS|aws|Aws|alibaba|aliyun)?_?(SECRET|secret|Secret)?_?(ACCESS|access|Access)?_?(KEY|key|Key)(\"|')?\s*(:|=>|=)\s*(\"|')?[A-Za-z0-9/\+=]{40}(\"|'|\s)?"
git_verification_patterns[1]="(\"|')?(AWS|aws|Aws|alibaba|aliyun)?_?(SECRET|secret|Secret)?_?(ACCESS|access|Access)?_?(KEY|key|Key)?_?(ID|id|Id)?(\"|')?\s*(:|=>|=)\s*(\"|')?[A-Za-z0-9/\+=]{20}(\"|'|\s)?"
git_verification_patterns[2]="(\s+|=|:)[a-z0-9]{64}(\s+|\|)"    # DigitalOcean Personal Access Token
git_verification_patterns[3]='Authorization\s+"?Basic\s+[a-zA-Z0-9+/]+={0,2}'
git_verification_patterns[4]="BEGIN RSA PRIVATE KEY"
git_verification_patterns[5]="END RSA PRIVATE KEY"
git_verification_patterns[6]="(\s+|=|:)?(LTAI)"    # LTAI   Access Token
git_verification_patterns[7]="(\s+|=|:)?(AK)"    # AK   Access Token

# List of the pattern descriptions (in same order)
declare -a git_verification_patterns_desc
git_verification_patterns_desc[0]="AWS Secret Key, Github Personal Access Token"
git_verification_patterns_desc[1]="AWS Access Key ID"
git_verification_patterns_desc[2]="DigitalOcean Personal Access Token"
git_verification_patterns_desc[3]="Base64 Encoded HTTP Auth header"
git_verification_patterns_desc[4]="SSH Private Key File"
git_verification_patterns_desc[5]="SSH Private Key File"

# List of the white-list exceptions for the above patterns (in same order)
declare -a git_verification_patterns_whitelist
git_verification_patterns_whitelist[0]="(\s+|=)00000000000000000000(\s+|\|)"
git_verification_patterns_whitelist[1]="(\s+|=)0000000000000000000000000000000000000000(\s+|\|)"
git_verification_patterns_whitelist[2]="(\s+|=)0000000000000000000000000000000000000000000000000000000000000000(\s+|\|)"
git_verification_patterns_whitelist[3]='Authorization "Basic MDAwMDAwMDAwMDAwMDowMDAwMDAwMDAwMAo="' # 0000000000000:00000000000"
git_verification_patterns_whitelist[4]=""
git_verification_patterns_whitelist[5]=""

git_verification_patterns_ssh_key='^.{65}$'