Udostępnij za pośrednictwem


Unprotect-CmsMessage

Odszyfrowuje zawartość, która została zaszyfrowana przy użyciu formatu składni komunikatów kryptograficznych.

Składnia

Unprotect-CmsMessage
         [-EventLogRecord] <PSObject>
         [-IncludeContext]
         [[-To] <CmsMessageRecipient[]>]
         [<CommonParameters>]
Unprotect-CmsMessage
         [-Content] <String>
         [-IncludeContext]
         [[-To] <CmsMessageRecipient[]>]
         [<CommonParameters>]
Unprotect-CmsMessage
         [-Path] <String>
         [-IncludeContext]
         [[-To] <CmsMessageRecipient[]>]
         [<CommonParameters>]
Unprotect-CmsMessage
         [-LiteralPath] <String>
         [-IncludeContext]
         [[-To] <CmsMessageRecipient[]>]
         [<CommonParameters>]

Opis

Polecenie cmdlet Unprotect-CmsMessage odszyfrowuje zawartość zaszyfrowaną przy użyciu formatu składni komunikatów kryptograficznych (CMS).

Polecenia cmdlet cmS obsługują szyfrowanie i odszyfrowywanie zawartości przy użyciu standardowego formatu IETF do kryptograficznego ochrony komunikatów, zgodnie z opisem RFC5652.

Standard szyfrowania CMS używa kryptografii klucza publicznego, gdzie klucze używane do szyfrowania zawartości (klucza publicznego) i kluczy używanych do odszyfrowywania zawartości (klucza prywatnego) są oddzielne. Klucz publiczny może być szeroko udostępniany i nie jest poufny. Jeśli jakakolwiek zawartość jest zaszyfrowana przy użyciu tego klucza publicznego, tylko twój klucz prywatny może go odszyfrować. Aby uzyskać więcej informacji, zobacz kryptografii klucza publicznego.

Unprotect-CmsMessage odszyfrowuje zawartość zaszyfrowaną w formacie CMS. To polecenie cmdlet można uruchomić, aby odszyfrować zaszyfrowaną zawartość, uruchamiając polecenie cmdlet Protect-CmsMessage. Możesz określić zawartość, którą chcesz odszyfrować jako ciąg, według numeru identyfikatora rekordu dziennika zdarzeń szyfrowania lub ścieżki do zaszyfrowanej zawartości. Polecenie cmdlet Unprotect-CmsMessage zwraca odszyfrowaną zawartość.

Przykłady

Przykład 1. Odszyfrowywanie wiadomości

PS C:\> C:\Users\gabyk\Documents\PowerShell_ISEUnprotect-CmsMessage -LiteralPath "C:\Users\Test\Documents\PowerShell ISE\Future_Plans.txt" -To '0f 8j b1 ab e0 ce 35 1d 67 d2 f2 6f a2 d2 00 cl 22 z9 m9 85'
Try the new Break All command

W poniższym przykładzie odszyfrujesz zawartość znajdującą się w ścieżce literału C:\Users\Test\Documents\PowerShell ISE. Dla wartości wymaganego parametru Aby, w tym przykładzie użyto odcisku palca certyfikatu użytego do wykonania szyfrowania. Odszyfrowany komunikat "Wypróbuj nowe polecenie Break All" jest wynikiem.

Parametry

-Content

Określa zaszyfrowany ciąg lub zmienną zawierającą zaszyfrowany ciąg.

Typ:String
Position:0
Domyślna wartość:None
Wymagane:True
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych:False

-EventLogRecord

Określa identyfikator rekordu dziennika zdarzeń, który reprezentuje operację szyfrowania CMS.

Typ:PSObject
Position:0
Domyślna wartość:None
Wymagane:True
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych:False

-IncludeContext

Typ:SwitchParameter
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-LiteralPath

Określa ścieżkę do zaszyfrowanej zawartości, którą chcesz odszyfrować. W przeciwieństwie do Pathwartość LiteralPath jest używana dokładnie tak, jak jest typowana. Znaki nie są interpretowane jako symbole wieloznaczne. Jeśli ścieżka zawiera znaki ucieczki, należy ująć ją w pojedynczy cudzysłów. Pojedyncze cudzysłowy informują program Windows PowerShell, aby nie interpretował żadnych znaków jako sekwencji ucieczki.

Typ:String
Position:0
Domyślna wartość:None
Wymagane:True
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-Path

Określa ścieżkę do zaszyfrowanej zawartości, którą chcesz odszyfrować.

Typ:String
Position:0
Domyślna wartość:None
Wymagane:True
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-To

Określa co najmniej jednego adresata komunikatu CMS zidentyfikowanego w dowolnym z poniższych formatów.

  • Rzeczywisty certyfikat (pobrany z dostawcy certyfikatów).
  • Ścieżka do pliku zawierającego certyfikat.
  • Ścieżka do katalogu zawierającego certyfikat.
  • Odcisk palca certyfikatu (używany do wyszukiwania w magazynie certyfikatów).
  • Nazwa podmiotu certyfikatu (używana do wyszukiwania w magazynie certyfikatów).
Typ:CmsMessageRecipient[]
Position:1
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

Dane wejściowe

System.Diagnostics.Eventing.Reader.EventLogRecord or System.String

Możesz potokować obiekt zawierający zaszyfrowaną zawartość, aby Unprotect-CmsMessage.

Dane wyjściowe

String

Niezaszyfrowana wiadomość.