├── .gitattributes ├── .gitignore ├── Globals.ps1 ├── LICENSE ├── MainForm.psf ├── PoSHEncryptor.psproj ├── PoSHEncryptor.psprojs ├── README.md ├── Startup.pss └── _About ├── encryptfile-1.png ├── main_UI.png └── opendiag1.png /.gitattributes: -------------------------------------------------------------------------------- 1 | # Auto detect text files and perform LF normalization 2 | * text=auto 3 | 4 | # Custom for Visual Studio 5 | *.cs diff=csharp 6 | 7 | # Standard to msysgit 8 | *.doc diff=astextplain 9 | *.DOC diff=astextplain 10 | *.docx diff=astextplain 11 | *.DOCX diff=astextplain 12 | *.dot diff=astextplain 13 | *.DOT diff=astextplain 14 | *.pdf diff=astextplain 15 | *.PDF diff=astextplain 16 | *.rtf diff=astextplain 17 | *.RTF diff=astextplain 18 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # Windows image file caches 2 | Thumbs.db 3 | ehthumbs.db 4 | 5 | # Folder config file 6 | Desktop.ini 7 | 8 | # Recycle Bin used on file shares 9 | $RECYCLE.BIN/ 10 | 11 | # Windows Installer files 12 | *.cab 13 | *.msi 14 | *.msm 15 | *.msp 16 | 17 | # Windows shortcuts 18 | *.lnk 19 | 20 | # ========================= 21 | # Operating System Files 22 | # ========================= 23 | 24 | # OSX 25 | # ========================= 26 | 27 | .DS_Store 28 | .AppleDouble 29 | .LSOverride 30 | 31 | # Thumbnails 32 | ._* 33 | 34 | # Files that might appear in the root of a volume 35 | .DocumentRevisions-V100 36 | .fseventsd 37 | .Spotlight-V100 38 | .TemporaryItems 39 | .Trashes 40 | .VolumeIcon.icns 41 | 42 | # Directories potentially created on remote AFP share 43 | .AppleDB 44 | .AppleDesktop 45 | Network Trash Folder 46 | Temporary Items 47 | .apdisk 48 | -------------------------------------------------------------------------------- /Globals.ps1: -------------------------------------------------------------------------------- 1 | #-------------------------------------------- 2 | # Declare Global Variables and Functions here 3 | #-------------------------------------------- 4 | 5 | 6 | #Sample function that provides the location of the script 7 | function Get-ScriptDirectory 8 | { 9 | <# 10 | .SYNOPSIS 11 | Get-ScriptDirectory returns the proper location of the script. 12 | 13 | .OUTPUTS 14 | System.String 15 | 16 | .NOTES 17 | Returns the correct path within a packaged executable. 18 | #> 19 | [OutputType([string])] 20 | param () 21 | if ($null -ne $hostinvocation) 22 | { 23 | Split-Path $hostinvocation.MyCommand.path 24 | } 25 | else 26 | { 27 | Split-Path $script:MyInvocation.MyCommand.Path 28 | } 29 | } 30 | 31 | #Sample variable that provides the location of the script 32 | [string]$ScriptDirectory = Get-ScriptDirectory 33 | 34 | 35 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2017 Bradley Wyatt 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /MainForm.psf: -------------------------------------------------------------------------------- 1 |  2 | 768b3973-2023-409e-808e-2056763a4fe1 3 | iVBORw0KGgoAAAANSUhEUgAAAgAAAAIACAYAAAD0eNT6AAAAAXNSR0IArs4c6QAAAARnQU1BAACx 4 | jwv8YQUAAAAJcEhZcwAAHYcAAB2HAY/l8WUAAGxRSURBVHhe7b11eFT5vuY7/9zn/jHPfebOM3fk 5 | zMyxfebsc7ad3We37BZounF3d3fX4O7u0rhDgiRBAsGJACEESEJC3N3KNXnv77sqBelQdAMdKbre 6 | D8+HVK1aa9Wq9ata33f5fyCEEEIIIYQQQgghhBBCCCGEEEIIIYQQQgghhBBCCCGEEEIIIYQQQggh 7 | hBBCCCGEEEIIIYQQQgghhBBCCCGEEEIIIYQQQgghhBBCCCGEEEIIIYQQQgghhBBCCCGEEEIIIYQQ 8 | QgghhBBCCCGEEEIIIYQQQgghhBBCCCGEEEIIIYQQQgghhBBCCCGEEEIIIYQQQgghhBBCCCGEEEII 9 | IYQQQgghhBBCCCGEEEIIIYQQQgghhBBCCCGEEEIIIYQQQgghhBBCCCGEEEIIIYQQQgghhBBCCCGE 10 | EEIIIYQQQgghhBBCCCGEEEIIIYQQQgghhBBCCCGEEEIIIYQQQgghhBBCCCGEEEIIIYQQQgghhBBC 11 | CCGEEEIIIYQQQgghhBBCCCGEEEIIIYQQQgghhBBCCCGEEEIIIYQQQgghhBBCCCGEEEIIIYQQQggh 12 | hBBCCCGEEEIIIYQQQgghhBBCCCGEEEIIIYQQQgghhBBCCCGEEEIIIYQQQgghhBBCCCGEEEIIIYQQ 13 | QgghhBBCCCGEEEIIIYQQQgghhBBCCCGEEEIIIYQQQgghhBBCCCGEEEIIIYQQQgghhBBCCCGEEEII 14 | IYQQQgghhBBCCCGEEEIIIYQQQgghhBBCCCGEEEIIIYQQQgghhBBCCCGEEEIIIYQQQgghhBBCCCGE 15 | EEIIIYQQQgghhBBCCCGEEEIIIYQQQgghhBBCCCGEEEIIIYQQQgghhBBCCCGEEEIIIYQQQgghhBBC 16 | CCGEEEIIIYQQQgghhBBCCCGEEEIIIYQQQgghhBBCCCGEEEIIIYQQQgghhBBCCCGEEEIIIYQQQggh 17 | hBBCCCGEEEIIIYQQQgghhBBCCCGEEEIIIYQQQgghhBBCCCGEEEIIIYQQQgghhBBCCCGEEEIIIYQQ 18 | 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 483 | IYQQQgghhBBCCCGEEEIIIYQQQgghhBBCCCGEEEIIIYQQQgghhBBCCCGEEEIIIYQQQgghhBBCCCGE 484 | EEIIIYQQQgghhBBCCCGEEEIIIYQQQgghhBBCCCGEEEIIIYQQQgghhBBCCCGEEEIIIYQQQgghhBBC 485 | CCGEEEIIIYQQQgghhBBCCCGEEEIIIYQQQgghhBBCCCGEEEIIIYQQQgghhBBCCCGEEEIIIYQQQggh 486 | hBBCCCGEEEIIIYQQQgghhBBCCCGEEEIIIYQQQgghhBBCCCGEEEIIIYQQQgghhBBCCCGEEEIIIYQQ 487 | QgghhBBCCCGEEEIIIYQQQgghhBBCCCGEEEIIIYQQQgghhBBCCCGEEEIIIYQQQgghhBBCCCGEEEII 488 | IYQQQgghhBBCCCGEEEIIIYQQQgghhBBCCCGEEEIIIYQQQgghhBBCCCGEEEIIIYQQQgghhBBCCCGE 489 | EEIIIYQQQgghhBBCCCGEEEIIIYQQQgghhBBCCCGEEEIIIYQQQgghhBBCCCGEEEIIIYQQQgghhBBC 490 | CCGEEEIIIYQQQgghhBBCCCGEEEIIIYQQQgghhBBCCCGEEEIIIYQQQgghhBBCCCGEEOKr/If/8P8D 491 | fQd9pH1SMM4AAAAASUVORK5CYII= 492 | 493 | 13, 26 494 | Font 495 | 1263, 550 496 | FixedDialog 497 | 498 | 499 | 500 | 13, 12, 13, 12 501 | False 502 | False 503 | formEncryptor 504 | CenterScreen 505 | Encryptor 506 | formEncryptor_Load 507 | 508 | 15, 64 509 | 6, 6, 6, 6 510 | groupbox5 511 | 6, 6, 6, 6 512 | 1231, 231 513 | 109 514 | False 515 | Encryption 516 | 517 | 12, 37 518 | 6, 6, 6, 6 519 | groupboxEncrypt 520 | 6, 6, 6, 6 521 | 247, 167 522 | 105 523 | False 524 | Item 525 | 526 | 12, 37 527 | 6, 6, 6, 6 528 | radiobuttonFile 529 | 225, 48 530 | 0 531 | True 532 | File 533 | True 534 | radiobuttonFile_CheckedChanged 535 | 536 | 537 | 12, 97 538 | 6, 6, 6, 6 539 | radiobuttonDirectory 540 | 225, 48 541 | 1 542 | True 543 | Directory 544 | True 545 | radiobuttonDirectory_CheckedChanged 546 | 547 | 548 | 549 | 271, 37 550 | 6, 6, 6, 6 551 | groupbox1 552 | 6, 6, 6, 6 553 | 740, 167 554 | 104 555 | False 556 | Details 557 | 558 | True 559 | 12, 116 560 | 6, 0, 6, 0 561 | labelEncryptionKey 562 | 159, 26 563 | 101 564 | Encryption Key 565 | 566 | 567 | True 568 | 10, 45 569 | 6, 0, 6, 0 570 | labelFileFolder 571 | 114, 26 572 | 100 573 | File/Folder 574 | 575 | 576 | Window 577 | 183, 45 578 | 6, 6, 6, 6 579 | textboxPATH 580 | True 581 | 545, 32 582 | 102 583 | 584 | 585 | Window 586 | 183, 113 587 | 6, 6, 6, 6 588 | textboxKEY 589 | True 590 | 545, 32 591 | 103 592 | 593 | 594 | 595 | 1052, 106 596 | 6, 6, 6, 6 597 | buttonEncrypt 598 | 162, 46 599 | 2 600 | &Encrypt 601 | True 602 | buttonEncrypt_Click 603 | 604 | 605 | 606 | 15, 307 607 | 6, 6, 6, 6 608 | groupbox4 609 | 6, 6, 6, 6 610 | 1231, 223 611 | 108 612 | False 613 | Decryption 614 | 615 | 12, 37 616 | 6, 6, 6, 6 617 | groupbox2 618 | 6, 6, 6, 6 619 | 247, 167 620 | 106 621 | False 622 | Item 623 | 624 | 12, 37 625 | 6, 6, 6, 6 626 | radioFileDecrypt 627 | 225, 48 628 | 0 629 | True 630 | File 631 | True 632 | radioFileDecrypt_CheckedChanged 633 | 634 | 635 | 12, 97 636 | 6, 6, 6, 6 637 | radioDirectoryDecrypt 638 | 225, 48 639 | 1 640 | True 641 | Directory 642 | True 643 | radioDirectoryDecrypt_CheckedChanged 644 | 645 | 646 | 647 | 1052, 97 648 | 6, 6, 6, 6 649 | buttonDecrypt 650 | 162, 46 651 | 107 652 | Decrypt 653 | True 654 | buttonDecrypt_Click 655 | 656 | 657 | 271, 37 658 | 6, 6, 6, 6 659 | groupbox3 660 | 6, 6, 6, 6 661 | 740, 167 662 | 105 663 | False 664 | AES Key 665 | 666 | True 667 | 12, 80 668 | 6, 0, 6, 0 669 | label1 670 | 159, 26 671 | 101 672 | Encryption Key 673 | 674 | 675 | Window 676 | 183, 77 677 | 6, 6, 6, 6 678 | textboxDecryptKey 679 | 545, 32 680 | 103 681 | 682 | 683 | 684 | 685 | 686 | 687 | 688 | 689 | 690 | 691 | 692 | 693 | 694 | 695 | 696 | 0, 0 697 | menustrip1 698 | 13, 4, 0, 4 699 | 1263, 44 700 | 110 701 | menustrip1 702 | 703 | 704 | 705 | 706 | 707 | 708 | 709 | 710 | fileToolStripMenuItem 711 | 63, 36 712 | File 713 | 714 | 715 | exitToolStripMenuItem 716 | 152, 36 717 | Exit 718 | exitToolStripMenuItem_Click 719 | 720 | 721 | 722 | 723 | 724 | 725 | 726 | 727 | 728 | 729 | toolsToolStripMenuItem 730 | 81, 36 731 | Tools 732 | 733 | 734 | 735 | 736 | 737 | 738 | 739 | 740 | 741 | 742 | 743 | 744 | 745 | 746 | 747 | 748 | encryptionToolStripMenuItem 749 | 201, 36 750 | Encryption 751 | 752 | 753 | 754 | 755 | 756 | 757 | 758 | decryptionToolStripMenuItem 759 | 205, 36 760 | Decryption 761 | 762 | 763 | clearEncryptionKeyToolStripMenuItem 764 | 315, 36 765 | Clear Encryption Key 766 | clearEncryptionKeyToolStripMenuItem_Click 767 | 768 | 769 | clearEncryptionPathToolStripMenuItem 770 | 315, 36 771 | Clear Encryption Path 772 | clearEncryptionPathToolStripMenuItem_Click 773 | 774 | 775 | deSelectEncryptionRadioButtonsToolStripMenuItem 776 | 468, 36 777 | De-Select Encryption Radio Buttons 778 | deSelectEncryptionRadioButtonsToolStripMenuItem_Click 779 | 780 | 781 | deSelectDecryptionRadioButtonsToolStripMenuItem 782 | 472, 36 783 | De-Select Decryption Radio Buttons 784 | deSelectDecryptionRadioButtonsToolStripMenuItem_Click 785 | 786 | 787 | toolstripseparator1 788 | 312, 6 789 | 790 | 791 | 792 | 793 | 794 | 795 | 796 | aboutToolStripMenuItem 797 | 76, 36 798 | Help 799 | 800 | 801 | aboutToolStripMenuItem1 802 | 153, 36 803 | About 804 | aboutToolStripMenuItem1_Click 805 | 806 | 1223 | 1 1224 | 1225 | mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 1226 | System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 1227 | System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 1228 | System.Data, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 1229 | System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a 1230 | System.Xml, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 1231 | System.Core, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 1232 | 1233 | -------------------------------------------------------------------------------- /PoSHEncryptor.psproj: -------------------------------------------------------------------------------- 1 |  2 | 2.0 3 | eefe52f3-6419-496b-8cdf-dae3ba0d8283 4 | 0 5 | 6 | 7 | Startup.pss 8 | MainForm.psf 9 | Globals.ps1 10 | 11 | -------------------------------------------------------------------------------- /PoSHEncryptor.psprojs: -------------------------------------------------------------------------------- 1 |  2 | 1.0 3 | eefe52f3-6419-496b-8cdf-dae3ba0d8283 4 | 5 | 6 | Startup.pss 7 | MainForm.psf 8 | 9 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # PowerShell-Encryptor 2 | Encrypt/Decrypt Directories or Files using PowerShell, AES-256 encryption 3 | 4 | # Description 5 | This project was created in PowerShell Studio 2017. It will encrypt files, directories (recursivly) and also decrypt file and directories 6 | 7 | Uses System.Security.Cryptography.Aes instead of AESManaged 8 | Keys are now SecureStrings by default 9 | 10 | The encryption used is AES-256 and the module for the encryption/decryption process was created by Tyler Siegrist 11 | https://gallery.technet.microsoft.com/EncryptDecrypt-files-use-65e7ae5d 12 | 13 | Uses C# to specify the file/directory you want to encrypt/decrypt so you will get the normal open file/folder dialog box 14 | After encrypting one file you can specify other files to encrypt, by default it will use the same AES-256 key as the previous file as long as your keep the AES-256 key present in the key textbox. Once you clear the key textbox it will generate a new AES-256 key. 15 | 16 | ![alt tag](https://github.com/bwya77/PowerShell-Encryptor/blob/master/_About/main_UI.png) 17 | 18 | ![alt tag](https://github.com/bwya77/PowerShell-Encryptor/blob/master/_About/encryptfile-1.png) 19 | 20 | ![alt tag](https://github.com/bwya77/PowerShell-Encryptor/blob/master/_About/opendiag1.png) 21 | -------------------------------------------------------------------------------- /Startup.pss: -------------------------------------------------------------------------------- 1 |  2 | 20 | Param ([String]$Commandline) 21 | 22 | #-------------------------------------------------------------------------- 23 | function New-AESKey() 24 | { 25 | <# 26 | .SYNOPSIS 27 | Generates a random AES key. 28 | 29 | .DESCRIPTION 30 | Generates a random AES key based on the desired key size. 31 | 32 | .PARAMETER KeySize 33 | Number of bits the generated key will have. 34 | 35 | .PARAMETER AsPlainText 36 | Returns a String instead of SecureString. 37 | 38 | .OUTPUTS 39 | System.Security.SecureString. New-AESKey return the key as a SecureString by default. 40 | System.String. New-AESKey will return the key in plain text as a string if the -AsPlainText parameter is specified. 41 | 42 | .EXAMPLE 43 | $key = New-AESKey 44 | This example generates a random 256-bit AES key and stores it in the variable $key. 45 | 46 | .NOTES 47 | Author: Tyler Siegrist 48 | Date: 9/18/2017 49 | #> 50 | [CmdletBinding()] 51 | [OutputType([System.Security.SecureString])] 52 | [OutputType([String], ParameterSetName = 'PlainText')] 53 | Param ( 54 | [Parameter(Mandatory = $false, Position = 1)] 55 | [ValidateSet(128, 192, 256)] 56 | [Int]$KeySize = 256, 57 | [Parameter(ParameterSetName = 'PlainText')] 58 | [Switch]$AsPlainText 59 | ) 60 | 61 | $AES = New-Object "System.Security.Cryptography.AesManaged" 62 | $AES.KeySize = $KeySize 63 | $AES.GenerateKey() 64 | if ($AsPlainText) 65 | { 66 | return [System.Convert]::ToBase64String($AES.Key) 67 | } 68 | else 69 | { 70 | return [System.Convert]::ToBase64String($AES.Key) | ConvertTo-SecureString -AsPlainText -Force 71 | } 72 | } 73 | 74 | Function Protect-File 75 | { 76 | <# 77 | .SYNOPSIS 78 | Encrypts a file using AES. 79 | 80 | .DESCRIPTION 81 | Encrypts a file using AES via a provided or randomly generated key. 82 | 83 | .PARAMETER FileName 84 | File(s) to be encrypted. 85 | 86 | .PARAMETER Key 87 | AES key as a SecureString to be used for encryption. 88 | 89 | .PARAMETER KeyAsPlainText 90 | AES key as a String to be used for encryption. 91 | 92 | .PARAMETER Suffix 93 | Suffix of the encrypted file to be removed. 94 | 95 | .PARAMETER CipherMode 96 | Specifies the block cipher mode to use for encryption. 97 | 98 | .PARAMETER PaddingMode 99 | Specifies the type of padding to apply when the message data block is shorter than the full number of bytes needed for a cryptographic operation. 100 | 101 | .PARAMETER RemoveSource 102 | Removes the source (decrypted) file after encrypting. 103 | 104 | .OUTPUTS 105 | System.IO.FileInfo. Protect-File will return FileInfo with the SourceFile and Key as added NoteProperties 106 | 107 | .EXAMPLE 108 | Protect-File 'C:\secrets.txt' $key 109 | This example encrypts C:\secrets.txt using the key stored in the variable $key. The encrypted file would have the default extension of '.AES' and the source (decrypted) file would not be removed. 110 | 111 | .EXAMPLE 112 | Protect-File 'C:\secrets.txt' -Suffix '.Encrypted' -RemoveSource 113 | This example encrypts C:\secrets.txt with a randomly generated AES key. The encrypted file would have an extension of '.Encrypted' and the source (decrypted) file would be removed. 114 | 115 | .EXAMPLE 116 | Get-ChildItem 'C:\Files' -Recurse | Protect-File -Key $key -RemoveSource 117 | This example encrypts all of the files under the C:\Files directory using the key stored in the variable $key. The encrypted files would have the default extension of '.AES' and the source (decrypted) files would be removed. 118 | 119 | .NOTES 120 | Author: Tyler Siegrist 121 | Date: 9/18/2017 122 | #> 123 | [CmdletBinding(DefaultParameterSetName = 'SecureString')] 124 | [OutputType([System.IO.FileInfo[]])] 125 | Param ( 126 | [Parameter(Mandatory = $true, Position = 1, ValueFromPipeline = $true, ValueFromPipelineByPropertyName = $true)] 127 | [Alias('PSPath', 'LiteralPath')] 128 | [string[]]$FileName, 129 | [Parameter(Mandatory = $false, Position = 2, ParameterSetName = 'SecureString')] 130 | [System.Security.SecureString]$Key = (New-AESKey), 131 | [Parameter(Mandatory = $true, Position = 2, ParameterSetName = 'PlainText')] 132 | [String]$KeyAsPlainText, 133 | [Parameter(Mandatory = $false, Position = 3)] 134 | [String]$Suffix = '.AES', 135 | [Parameter(Mandatory = $false, Position = 4)] 136 | [System.Security.Cryptography.CipherMode]$CipherMode = 'CBC', 137 | [Parameter(Mandatory = $false, Position = 5)] 138 | [System.Security.Cryptography.PaddingMode]$PaddingMode = 'PKCS7', 139 | [Parameter()] 140 | [Switch]$RemoveSource 141 | ) 142 | Begin 143 | { 144 | #Configure AES 145 | try 146 | { 147 | if ($PSCmdlet.ParameterSetName -eq 'PlainText') 148 | { 149 | $Key = $KeyAsPlainText | ConvertTo-SecureString -AsPlainText -Force 150 | } 151 | 152 | #Decrypt AES Key from SecureString 153 | $BSTR = [System.Runtime.InteropServices.Marshal]::SecureStringToBSTR($Key) 154 | $EncryptionKey = [System.Convert]::FromBase64String([System.Runtime.InteropServices.Marshal]::PtrToStringAuto($BSTR)) 155 | 156 | $AES = [System.Security.Cryptography.Aes]::Create() 157 | $AES.Mode = $CipherMode 158 | $AES.Padding = $PaddingMode 159 | $AES.KeySize = $EncryptionKey.Length * 8 160 | $AES.Key = $EncryptionKey 161 | } 162 | Catch 163 | { 164 | Write-Error $_ -ErrorAction Stop 165 | } 166 | } 167 | Process 168 | { 169 | $Files = Get-Item -LiteralPath $FileName 170 | 171 | ForEach ($File in $Files) 172 | { 173 | $DestinationFile = $File.FullName + $Suffix 174 | 175 | Try 176 | { 177 | $FileStreamReader = New-Object System.IO.FileStream($File.FullName, [System.IO.FileMode]::Open) 178 | $FileStreamWriter = New-Object System.IO.FileStream($DestinationFile, [System.IO.FileMode]::Create) 179 | 180 | #Write IV (initialization-vector) length & IV to encrypted file 181 | $AES.GenerateIV() 182 | $FileStreamWriter.Write([System.BitConverter]::GetBytes($AES.IV.Length), 0, 4) 183 | $FileStreamWriter.Write($AES.IV, 0, $AES.IV.Length) 184 | 185 | #Perform encryption 186 | $Transform = $AES.CreateEncryptor() 187 | $CryptoStream = New-Object System.Security.Cryptography.CryptoStream($FileStreamWriter, $Transform, [System.Security.Cryptography.CryptoStreamMode]::Write) 188 | $FileStreamReader.CopyTo($CryptoStream) 189 | 190 | #Close open files 191 | $CryptoStream.FlushFinalBlock() 192 | $CryptoStream.Close() 193 | $FileStreamReader.Close() 194 | $FileStreamWriter.Close() 195 | 196 | #Output ecrypted file 197 | Get-Item $DestinationFile | Add-Member –MemberType NoteProperty –Name Key –Value $Key -PassThru | Add-Member –MemberType NoteProperty –Name SourceFile –Value $File.FullName -PassThru 198 | 199 | #Delete unencrypted file 200 | if ($RemoveSource) { Remove-Item -LiteralPath $File.FullName } 201 | } 202 | Catch 203 | { 204 | Write-Error $_ 205 | If ($FileStreamWriter) 206 | { 207 | #Remove failed file 208 | $FileStreamWriter.Close() 209 | Remove-Item -LiteralPath $DestinationFile -Force 210 | } 211 | Continue 212 | } 213 | Finally 214 | { 215 | if ($CryptoStream) { $CryptoStream.Close() } 216 | if ($FileStreamReader) { $FileStreamReader.Close() } 217 | if ($FileStreamWriter) { $FileStreamWriter.Close() } 218 | } 219 | } 220 | } 221 | End { } 222 | } 223 | 224 | Function Unprotect-File 225 | { 226 | <# 227 | .SYNOPSIS 228 | Decrypts an AES encrypted file. 229 | 230 | .DESCRIPTION 231 | Decrypts a file using a provided AES key. 232 | 233 | .PARAMETER FileName 234 | File(s) to be decrypted. 235 | 236 | .PARAMETER Key 237 | AES key as a SecureString be used for decryption. 238 | 239 | .PARAMETER KeyAsPlainText 240 | AES key as a String to be used for decryption. 241 | 242 | .PARAMETER Suffix 243 | Suffix of the encrypted file to be removed. 244 | 245 | .PARAMETER CipherMode 246 | Specifies the block cipher mode that was used for encryption. 247 | 248 | .PARAMETER PaddingMode 249 | Specifies the type of padding that was applied when the message data block was shorter than the full number of bytes needed for a cryptographic operation. 250 | 251 | .PARAMETER RemoveSource 252 | Removes the source (encrypted) file after decrypting. 253 | 254 | .OUTPUTS 255 | System.IO.FileInfo. Unprotect-File will return FileInfo with the SourceFile as an added NoteProperty 256 | 257 | .EXAMPLE 258 | Unprotect-File 'C:\secrets.txt.AES' $key 259 | This example decrypts C:\secrets.txt.AES using the key stored in the variable $key. The decrypted file would remove the default extension of '.AES' and the source (encrypted) file would not be removed. 260 | 261 | .EXAMPLE 262 | Unprotect-File 'C:\secrets.txt.Encrypted' -Key $key -Suffix '.Encrypted' -RemoveSource 263 | This example decrypts C:\secrets.txt.Encrypted using the key stored in the variable $key. The decrypted file would remove the extension of '.Encrypted' and the source (encrypted) file would be removed. 264 | 265 | .EXAMPLE 266 | Get-ChildItem 'C:\Files' -Recurse | Unprotect-File -Key $key -RemoveSource 267 | This example decrypts all of the files under the C:\Files directory using the key stored in the variable $key. The decrypted files would remove the default extension of '.AES' and the source (encrypted) files would be removed. 268 | 269 | .NOTES 270 | Author: Tyler Siegrist 271 | Date: 9/18/2017 272 | #> 273 | [CmdletBinding(DefaultParameterSetName = 'SecureString')] 274 | [OutputType([System.IO.FileInfo[]])] 275 | Param ( 276 | [Parameter(Mandatory = $true, Position = 1, ValueFromPipeline = $true, ValueFromPipelineByPropertyName = $true)] 277 | [Alias('PSPath', 'LiteralPath')] 278 | [string[]]$FileName, 279 | [Parameter(Mandatory = $true, Position = 2, ValueFromPipelineByPropertyName = $true, ParameterSetName = 'SecureString')] 280 | [System.Security.SecureString]$Key, 281 | [Parameter(Mandatory = $true, Position = 2, ValueFromPipelineByPropertyName = $true, ParameterSetName = 'PlainText')] 282 | [String]$KeyAsPlainText, 283 | [Parameter(Mandatory = $false, Position = 3)] 284 | [String]$Suffix = '.AES', 285 | [Parameter(Mandatory = $false, Position = 4)] 286 | [System.Security.Cryptography.CipherMode]$CipherMode = 'CBC', 287 | [Parameter(Mandatory = $false, Position = 5)] 288 | [System.Security.Cryptography.PaddingMode]$PaddingMode = 'PKCS7', 289 | [Parameter()] 290 | [Switch]$RemoveSource 291 | ) 292 | Process 293 | { 294 | #Configure AES 295 | try 296 | { 297 | if ($PSCmdlet.ParameterSetName -eq 'PlainText') 298 | { 299 | $Key = $KeyAsPlainText | ConvertTo-SecureString -AsPlainText -Force 300 | } 301 | 302 | #Decrypt AES Key from SecureString 303 | $BSTR = [System.Runtime.InteropServices.Marshal]::SecureStringToBSTR($Key) 304 | $EncryptionKey = [System.Convert]::FromBase64String([System.Runtime.InteropServices.Marshal]::PtrToStringAuto($BSTR)) 305 | 306 | $AES = [System.Security.Cryptography.Aes]::Create() 307 | $AES.Mode = $CipherMode 308 | $AES.Padding = $PaddingMode 309 | $AES.KeySize = $EncryptionKey.Length * 8 310 | $AES.Key = $EncryptionKey 311 | } 312 | Catch 313 | { 314 | Write-Error $_ -ErrorAction Stop 315 | } 316 | 317 | #Used to store successfully decrypted file names. 318 | $Files = Get-Item -LiteralPath $FileName 319 | 320 | ForEach ($File in $Files) 321 | { 322 | #Verify file ends with supplied suffix 323 | If (-not $File.Name.EndsWith($Suffix)) 324 | { 325 | Write-Error "$($File.FullName) does not have an extension of '$Suffix'." 326 | Continue 327 | } 328 | 329 | $DestinationFile = $File.FullName -replace "$Suffix$" 330 | 331 | Try 332 | { 333 | $FileStreamReader = New-Object System.IO.FileStream($File.FullName, [System.IO.FileMode]::Open) 334 | $FileStreamWriter = New-Object System.IO.FileStream($DestinationFile, [System.IO.FileMode]::Create) 335 | 336 | #Get IV from file 337 | [Byte[]]$LenIV = New-Object Byte[] 4 338 | $FileStreamReader.Seek(0, [System.IO.SeekOrigin]::Begin) | Out-Null 339 | $FileStreamReader.Read($LenIV, 0, 3) | Out-Null 340 | [Int]$LIV = [System.BitConverter]::ToInt32($LenIV, 0) 341 | [Byte[]]$IV = New-Object Byte[] $LIV 342 | $FileStreamReader.Seek(4, [System.IO.SeekOrigin]::Begin) | Out-Null 343 | $FileStreamReader.Read($IV, 0, $LIV) | Out-Null 344 | $AES.IV = $IV 345 | 346 | #Peform Decryption 347 | $Transform = $AES.CreateDecryptor() 348 | $CryptoStream = New-Object System.Security.Cryptography.CryptoStream($FileStreamWriter, $Transform, [System.Security.Cryptography.CryptoStreamMode]::Write) 349 | $FileStreamReader.CopyTo($CryptoStream) 350 | 351 | #Close open files 352 | $CryptoStream.FlushFinalBlock() 353 | $CryptoStream.Close() 354 | $FileStreamReader.Close() 355 | $FileStreamWriter.Close() 356 | 357 | #Output decrypted file 358 | Get-Item $DestinationFile | Add-Member –MemberType NoteProperty –Name SourceFile –Value $File.FullName -PassThru 359 | 360 | #Delete encrypted file 361 | if ($RemoveSource) { Remove-Item $File.FullName } 362 | } 363 | Catch 364 | { 365 | Write-Error $_ 366 | If ($FileStreamWriter) 367 | { 368 | #Remove failed file 369 | $FileStreamWriter.Close() 370 | Remove-Item -LiteralPath $DestinationFile -Force 371 | } 372 | Continue 373 | } 374 | Finally 375 | { 376 | if ($CryptoStream) { $CryptoStream.Close() } 377 | if ($FileStreamReader) { $FileStreamReader.Close() } 378 | if ($FileStreamWriter) { $FileStreamWriter.Close() } 379 | } 380 | } 381 | } 382 | } 383 | 384 | 385 | 386 | Function New-WPFMessageBox 387 | { 388 | 389 | # For examples for use, see my blog: 390 | # https://smsagent.wordpress.com/2017/08/24/a-customisable-wpf-messagebox-for-powershell/ 391 | 392 | # CHANGES 393 | # 2017-09-11 - Added some required assemblies in the dynamic parameters to avoid errors when run from the PS console host. 394 | 395 | # Define Parameters 396 | [CmdletBinding()] 397 | Param 398 | ( 399 | # The popup Content 400 | [Parameter(Mandatory = $True, Position = 0)] 401 | [Object]$Content, 402 | # The window title 403 | 404 | [Parameter(Mandatory = $false, Position = 1)] 405 | [string]$Title, 406 | # The buttons to add 407 | 408 | [Parameter(Mandatory = $false, Position = 2)] 409 | [ValidateSet('OK', 'OK-Cancel', 'Abort-Retry-Ignore', 'Yes-No-Cancel', 'Yes-No', 'Retry-Cancel', 'Cancel-TryAgain-Continue', 'None')] 410 | [array]$ButtonType = 'OK', 411 | # The buttons to add 412 | 413 | [Parameter(Mandatory = $false, Position = 3)] 414 | [array]$CustomButtons, 415 | # Content font size 416 | 417 | [Parameter(Mandatory = $false, Position = 4)] 418 | [int]$ContentFontSize = 14, 419 | # Title font size 420 | 421 | [Parameter(Mandatory = $false, Position = 5)] 422 | [int]$TitleFontSize = 14, 423 | # BorderThickness 424 | 425 | [Parameter(Mandatory = $false, Position = 6)] 426 | [int]$BorderThickness = 0, 427 | # CornerRadius 428 | 429 | [Parameter(Mandatory = $false, Position = 7)] 430 | [int]$CornerRadius = 8, 431 | # ShadowDepth 432 | 433 | [Parameter(Mandatory = $false, Position = 8)] 434 | [int]$ShadowDepth = 3, 435 | # BlurRadius 436 | 437 | [Parameter(Mandatory = $false, Position = 9)] 438 | [int]$BlurRadius = 20, 439 | # WindowHost 440 | 441 | [Parameter(Mandatory = $false, Position = 10)] 442 | [object]$WindowHost, 443 | # Timeout in seconds, 444 | 445 | [Parameter(Mandatory = $false, Position = 11)] 446 | [int]$Timeout, 447 | # Code for Window Loaded event, 448 | 449 | [Parameter(Mandatory = $false, Position = 12)] 450 | [scriptblock]$OnLoaded, 451 | # Code for Window Closed event, 452 | 453 | [Parameter(Mandatory = $false, Position = 13)] 454 | [scriptblock]$OnClosed 455 | 456 | ) 457 | 458 | # Dynamically Populated parameters 459 | DynamicParam 460 | { 461 | 462 | # Add assemblies for use in PS Console 463 | Add-Type -AssemblyName System.Drawing, PresentationCore 464 | 465 | # ContentBackground 466 | $ContentBackground = 'ContentBackground' 467 | $AttributeCollection = New-Object System.Collections.ObjectModel.Collection[System.Attribute] 468 | $ParameterAttribute = New-Object System.Management.Automation.ParameterAttribute 469 | $ParameterAttribute.Mandatory = $False 470 | $AttributeCollection.Add($ParameterAttribute) 471 | $RuntimeParameterDictionary = New-Object System.Management.Automation.RuntimeDefinedParameterDictionary 472 | $arrSet = [System.Drawing.Brushes] | Get-Member -Static -MemberType Property | Select-Object -ExpandProperty Name 473 | $ValidateSetAttribute = New-Object System.Management.Automation.ValidateSetAttribute($arrSet) 474 | $AttributeCollection.Add($ValidateSetAttribute) 475 | $PSBoundParameters.ContentBackground = "White" 476 | $RuntimeParameter = New-Object System.Management.Automation.RuntimeDefinedParameter($ContentBackground, [string], $AttributeCollection) 477 | $RuntimeParameterDictionary.Add($ContentBackground, $RuntimeParameter) 478 | 479 | 480 | # FontFamily 481 | $FontFamily = 'FontFamily' 482 | $AttributeCollection = New-Object System.Collections.ObjectModel.Collection[System.Attribute] 483 | $ParameterAttribute = New-Object System.Management.Automation.ParameterAttribute 484 | $ParameterAttribute.Mandatory = $False 485 | $AttributeCollection.Add($ParameterAttribute) 486 | $arrSet = [System.Drawing.FontFamily]::Families | Select-Object -ExpandProperty Name 487 | $ValidateSetAttribute = New-Object System.Management.Automation.ValidateSetAttribute($arrSet) 488 | $AttributeCollection.Add($ValidateSetAttribute) 489 | $RuntimeParameter = New-Object System.Management.Automation.RuntimeDefinedParameter($FontFamily, [string], $AttributeCollection) 490 | $RuntimeParameterDictionary.Add($FontFamily, $RuntimeParameter) 491 | $PSBoundParameters.FontFamily = "Segui" 492 | 493 | # TitleFontWeight 494 | $TitleFontWeight = 'TitleFontWeight' 495 | $AttributeCollection = New-Object System.Collections.ObjectModel.Collection[System.Attribute] 496 | $ParameterAttribute = New-Object System.Management.Automation.ParameterAttribute 497 | $ParameterAttribute.Mandatory = $False 498 | $AttributeCollection.Add($ParameterAttribute) 499 | $arrSet = [System.Windows.FontWeights] | Get-Member -Static -MemberType Property | Select-Object -ExpandProperty Name 500 | $ValidateSetAttribute = New-Object System.Management.Automation.ValidateSetAttribute($arrSet) 501 | $AttributeCollection.Add($ValidateSetAttribute) 502 | $PSBoundParameters.TitleFontWeight = "Normal" 503 | $RuntimeParameter = New-Object System.Management.Automation.RuntimeDefinedParameter($TitleFontWeight, [string], $AttributeCollection) 504 | $RuntimeParameterDictionary.Add($TitleFontWeight, $RuntimeParameter) 505 | 506 | # ContentFontWeight 507 | $ContentFontWeight = 'ContentFontWeight' 508 | $AttributeCollection = New-Object System.Collections.ObjectModel.Collection[System.Attribute] 509 | $ParameterAttribute = New-Object System.Management.Automation.ParameterAttribute 510 | $ParameterAttribute.Mandatory = $False 511 | $AttributeCollection.Add($ParameterAttribute) 512 | $arrSet = [System.Windows.FontWeights] | Get-Member -Static -MemberType Property | Select-Object -ExpandProperty Name 513 | $ValidateSetAttribute = New-Object System.Management.Automation.ValidateSetAttribute($arrSet) 514 | $AttributeCollection.Add($ValidateSetAttribute) 515 | $PSBoundParameters.ContentFontWeight = "Normal" 516 | $RuntimeParameter = New-Object System.Management.Automation.RuntimeDefinedParameter($ContentFontWeight, [string], $AttributeCollection) 517 | $RuntimeParameterDictionary.Add($ContentFontWeight, $RuntimeParameter) 518 | 519 | 520 | # ContentTextForeground 521 | $ContentTextForeground = 'ContentTextForeground' 522 | $AttributeCollection = New-Object System.Collections.ObjectModel.Collection[System.Attribute] 523 | $ParameterAttribute = New-Object System.Management.Automation.ParameterAttribute 524 | $ParameterAttribute.Mandatory = $False 525 | $AttributeCollection.Add($ParameterAttribute) 526 | $arrSet = [System.Drawing.Brushes] | Get-Member -Static -MemberType Property | Select-Object -ExpandProperty Name 527 | $ValidateSetAttribute = New-Object System.Management.Automation.ValidateSetAttribute($arrSet) 528 | $AttributeCollection.Add($ValidateSetAttribute) 529 | $PSBoundParameters.ContentTextForeground = "Black" 530 | $RuntimeParameter = New-Object System.Management.Automation.RuntimeDefinedParameter($ContentTextForeground, [string], $AttributeCollection) 531 | $RuntimeParameterDictionary.Add($ContentTextForeground, $RuntimeParameter) 532 | 533 | # TitleTextForeground 534 | $TitleTextForeground = 'TitleTextForeground' 535 | $AttributeCollection = New-Object System.Collections.ObjectModel.Collection[System.Attribute] 536 | $ParameterAttribute = New-Object System.Management.Automation.ParameterAttribute 537 | $ParameterAttribute.Mandatory = $False 538 | $AttributeCollection.Add($ParameterAttribute) 539 | $arrSet = [System.Drawing.Brushes] | Get-Member -Static -MemberType Property | Select-Object -ExpandProperty Name 540 | $ValidateSetAttribute = New-Object System.Management.Automation.ValidateSetAttribute($arrSet) 541 | $AttributeCollection.Add($ValidateSetAttribute) 542 | $PSBoundParameters.TitleTextForeground = "Black" 543 | $RuntimeParameter = New-Object System.Management.Automation.RuntimeDefinedParameter($TitleTextForeground, [string], $AttributeCollection) 544 | $RuntimeParameterDictionary.Add($TitleTextForeground, $RuntimeParameter) 545 | 546 | # BorderBrush 547 | $BorderBrush = 'BorderBrush' 548 | $AttributeCollection = New-Object System.Collections.ObjectModel.Collection[System.Attribute] 549 | $ParameterAttribute = New-Object System.Management.Automation.ParameterAttribute 550 | $ParameterAttribute.Mandatory = $False 551 | $AttributeCollection.Add($ParameterAttribute) 552 | $arrSet = [System.Drawing.Brushes] | Get-Member -Static -MemberType Property | Select-Object -ExpandProperty Name 553 | $ValidateSetAttribute = New-Object System.Management.Automation.ValidateSetAttribute($arrSet) 554 | $AttributeCollection.Add($ValidateSetAttribute) 555 | $PSBoundParameters.BorderBrush = "Black" 556 | $RuntimeParameter = New-Object System.Management.Automation.RuntimeDefinedParameter($BorderBrush, [string], $AttributeCollection) 557 | $RuntimeParameterDictionary.Add($BorderBrush, $RuntimeParameter) 558 | 559 | 560 | # TitleBackground 561 | $TitleBackground = 'TitleBackground' 562 | $AttributeCollection = New-Object System.Collections.ObjectModel.Collection[System.Attribute] 563 | $ParameterAttribute = New-Object System.Management.Automation.ParameterAttribute 564 | $ParameterAttribute.Mandatory = $False 565 | $AttributeCollection.Add($ParameterAttribute) 566 | $arrSet = [System.Drawing.Brushes] | Get-Member -Static -MemberType Property | Select-Object -ExpandProperty Name 567 | $ValidateSetAttribute = New-Object System.Management.Automation.ValidateSetAttribute($arrSet) 568 | $AttributeCollection.Add($ValidateSetAttribute) 569 | $PSBoundParameters.TitleBackground = "White" 570 | $RuntimeParameter = New-Object System.Management.Automation.RuntimeDefinedParameter($TitleBackground, [string], $AttributeCollection) 571 | $RuntimeParameterDictionary.Add($TitleBackground, $RuntimeParameter) 572 | 573 | # ButtonTextForeground 574 | $ButtonTextForeground = 'ButtonTextForeground' 575 | $AttributeCollection = New-Object System.Collections.ObjectModel.Collection[System.Attribute] 576 | $ParameterAttribute = New-Object System.Management.Automation.ParameterAttribute 577 | $ParameterAttribute.Mandatory = $False 578 | $AttributeCollection.Add($ParameterAttribute) 579 | $arrSet = [System.Drawing.Brushes] | Get-Member -Static -MemberType Property | Select-Object -ExpandProperty Name 580 | $ValidateSetAttribute = New-Object System.Management.Automation.ValidateSetAttribute($arrSet) 581 | $AttributeCollection.Add($ValidateSetAttribute) 582 | $PSBoundParameters.ButtonTextForeground = "Black" 583 | $RuntimeParameter = New-Object System.Management.Automation.RuntimeDefinedParameter($ButtonTextForeground, [string], $AttributeCollection) 584 | $RuntimeParameterDictionary.Add($ButtonTextForeground, $RuntimeParameter) 585 | 586 | # Sound 587 | $Sound = 'Sound' 588 | $AttributeCollection = New-Object System.Collections.ObjectModel.Collection[System.Attribute] 589 | $ParameterAttribute = New-Object System.Management.Automation.ParameterAttribute 590 | $ParameterAttribute.Mandatory = $False 591 | #$ParameterAttribute.Position = 14 592 | $AttributeCollection.Add($ParameterAttribute) 593 | $arrSet = (Get-ChildItem "$env:SystemDrive\Windows\Media" -Filter Windows* | Select-Object -ExpandProperty Name).Replace('.wav', '') 594 | $ValidateSetAttribute = New-Object System.Management.Automation.ValidateSetAttribute($arrSet) 595 | $AttributeCollection.Add($ValidateSetAttribute) 596 | $RuntimeParameter = New-Object System.Management.Automation.RuntimeDefinedParameter($Sound, [string], $AttributeCollection) 597 | $RuntimeParameterDictionary.Add($Sound, $RuntimeParameter) 598 | 599 | return $RuntimeParameterDictionary 600 | } 601 | 602 | Begin 603 | { 604 | Add-Type -AssemblyName PresentationFramework 605 | } 606 | 607 | Process 608 | { 609 | 610 | # Define the XAML markup 611 | [XML]$Xaml = @" 612 | 616 | 617 | 630 | 631 | 632 | 633 | 634 | 635 | 636 | 637 | 638 | 639 | 640 | 641 | 642 | 643 | 644 | 645 | 646 | 647 | 648 | 649 | 650 | 651 | 652 | 653 | 654 | 655 | 656 | 657 | 658 | 659 | 660 | 661 | 662 | "@ 663 | 664 | [XML]$ButtonXaml = @" 665 |