Sharepoint 2010 설치 후 데이터베이스를 보다가 보면 tCompressedString 타입이라면서 암호화된 문자열을 볼 수가 있다.
그 문자열을 복호화해주는 코드라고 볼 수 있다.
private string Decompress(byte[] compressedBytesBuffer)
{
string uncompressedString = String.Empty;
using (MemoryStream compressedMemoryStream = new MemoryStream(compressedBytesBuffer))
{
compressedMemoryStream.Position += 12; // Compress Structure Header according to [MS -WSSFO2].
compressedMemoryStream.Position += 2; // Zlib header.
using (DeflateStream deflateStream = new DeflateStream(compressedMemoryStream, CompressionMode.Decompress))
{
using (MemoryStream uncompressedMemoryStream = new MemoryStream())
{
deflateStream.CopyTo(uncompressedMemoryStream);
uncompressedMemoryStream.Position = 0;
using (StreamReader streamReader = new StreamReader(uncompressedMemoryStream))
{
uncompressedString = streamReader.ReadToEnd();
}
}
}
}
return uncompressedString;
}
private byte[] ConvertHexStringToByte(string convertString)
{
convertString = convertString.Replace("0x", "");
byte[] convertArr = new byte[convertString.Length / 2];
for (int i = 0; i < convertArr.Length; i++)
{
convertArr[i] = Convert.ToByte(convertString.Substring(i * 2, 2), 16);
}
return convertArr;
}
// 예제
string sampleString;
string xmlString = Decompress(ConvertHexStringToByte(sampleString));
반응형
'개발' 카테고리의 다른 글
IIS 에러 페이지 설정 (0) | 2022.07.18 |
---|---|
Cookie 설정 (0) | 2022.05.17 |
IIS Header Server, x-aspnet-version, x-powered-by 제거하기 (0) | 2022.01.24 |
Window10 NVM 설치하기 (0) | 2022.01.03 |
Visual Studio Code 테마 변경하기 (0) | 2021.11.25 |
댓글