如何识别未知的压缩算法?

时间:2016-06-25 10:12:12

标签: compression

我试图从Adobe程序的项目文件(Adobe Premiere Pro)中解析一些文本信息。项目文件是gzip压缩的XML文件。然后,这些字段包含具有base64个编码字段的字段,这些字段包含有关项目组件的更多信息。我试图查看这些字段中的信息。

我不能为我的生活确定这里使用的压缩方案。它看起来不像GZip,因为它没有合适的标题。有人可以帮忙吗?

base64编码字段的示例是:

  

AQAAAAAAAACk1QAAAAAAAENvbXByZXNzZWRUaXRsZQB4nO0da1MbSa5 / IUU + L34Eg6maY4sQ2OWWhBRmk / hTytiGeM + xfbZJYH / 83enRPf2cGfMIMyZdFOCR1Gp1t6TWSOPp // 03EB + KW / FVTERNfBMjsRBLMRYzMRX / FP8QTbElGvC / BpipGAB8CNipuCbsn + JCHItfgGqHaH4V + yIRB0AzE5fQ4rM4h08zsfLgF8BlBX2OCPPB6ndftKDPhujA7y78toCi7tEk4i1x5uvPogv4FV2jdEuieA899MUdYI +贝格+ w9UCpNgHuoW4gRbIOZsqAa4ruloBVvUzgOsRzce + uALsBHpjTkXUKNEinZcJ / OZD + FgGF56II + C1JOgJtWZKF4p0U5AWe7yCn3wJ82lRvhnQroIS + hhTxjOYz1VASgVHaPGK1XO0BMe7JHnHhF + IU1q3GfWwBP37kKm / 2N6kdq + PaD5GwH1F / VwBPMSvJXmZ9BfAZU4yqrGHcCw / WS / AWxUTg9dFkrnSv4G2X2kNlax5ss / FJ1jNE / h7BFy6AGuKPbI57NvHYosefD4R7wDG9GydTG / jkLorDkFLjuDnHaznObVgWh + TwNovQMbvMI4vNJKFHK2ydIU / B8g10OB48XpKPItau / Ppz5U7mweklaxleD2SutkFGlwJrZUH1FufsHh9JS1gS45XwxL4O4Pxm1gFSagvHhnj9whvQhOQZUZyzUB6k8qGsxfKk1NhD4xZyh5HQ7RzR6LweWNprzmadsF4siSur7V6r4FmIP4t9eWGLC5kJdvSSrogax9oEH9Oox9Rn7gLoj1vg9R7YAUsYT5tAl7Q98VnUvfmAEUfqDzhOVzjf2w5pR3pK7UzR8nWlN0O8aERI + YNSdgHyATa4p51l / rYopGGR1fP5WnjLuDqluxwlHrzuWWvTyNDcT + / AawPsC / kec9AX / 6SvsPmxPozovk7pBbaqy / Ff4CqT7KgDGGqBDjPa JUU7BA4z0gTcE30 + iCPfFqf1xn9nRby0XRo5YgZiY / wf0i + CZ +1分贝+ TgAaOyZZwzx3LK9UijEvAJ49JlteA + XS + s6W5VpBFlRijOSQrmBLuGGgmpFu8Mq8gRtwCSWpP9Il91To9J6ArE9KqOa3Nc0u5fu9IfT9tV9ZzSJ4NVyhEZXontXf00zsEFQ + 5UPb + t2QlU5IL929XL8I0qFUzis4 / yvHYsbyPTch60A / iLJ1K7V5CfOP2mE2XxaO3Jo + EVP + Z0B44lfEHWonaVzny9fEJ3VFcUuSM + 4vpWT / KsfL + m0WVkE3OifeAbPOCaLu0fwzSVWnSPRfyWo8 + I6 / 2eubYimjVOJW22leunrFuvNtw7TNbPkz3ijlEzXuc5oU17TKd7WrooLujRi18aVqYpW9LyXUquWye / sU9eDN00NW0 + poxYv59WDhrp + 7B89vWAneC3BrvFXdSHjy + Lv0dSKsZw73GiOLyHTnjGobzcCt + h886Y7ENkTfPiYth6j9ICp2ltWFob5wPVTPYpThc5VnY2rIp1rdr7Lcr7z9x / NFT / IwNdylD + YkQhWo3Ia + wssZrQpnuT7qHwlnQmuP3EaLi9uY9qLkC9r0pt2J7932BiUsAO4Y7TcxfD1PZbRjTnJD2s62YdDacaa9I3yfgm / vkNfYpOzUmuregf6qtT6faz2jWjgmOd253QV6aTx69zdP0Qmgt1yQD5itcbra / MjHaQ7S9Vqb3uKJZ6VMu4Jr84h21QRvrUCVnDzxcK + Xh07JX8e21XuAJHusrdqOviL4i + oroK9bwFZ3oK6KviL7ip / EVRTSqNqxG6V7XYG3fBO5LNMVraaF5d0IrY64a8oe1Vs / TnKpE41SyN1RDRT3tC1UnUzX7YkpdI + LKAXoDdUccsoUQXUJPjPAo2afup7PAvtHFJsQbJcA6PeJxDVeUAVDWkoXPatsraNuTknINF7Mcn + FqRj6ScwfLlEMRVUKrsSDMVFr0inRQzXwYe z9vcwSrdUk + fUIj +​​ ZJmK7pytzkne / T94n1a4tNAqsLMle0 + ZRC0bbLmosUh7yJqpPG1HuHHpDnXqSyncn1CFtGWFuG2sfdff + / lJ56wR7272LBEcP18YnAwIQntzfwUlDuvJiYh6Y / IZ4zkHjRMnxFAzfFlt7ndvz3Wp12o + 1xSHgXajo07o7lxJcuiSig7xNb1u9zzcOXc9llUPPdY51mR91b + dwfWGz19J10Nnyarb / OpjBM5j7cCny5s0q6 / DVxxD1ERwP24mM9tIO4tfEZ4k + qzP + 4vSxrqGTEhzXicpTTXsJVtuYM / l7WYFYcq2YopV1mWsrsxltIAbX7M7 / 0twYeqnYYjMi1 / 3g7UzHxCrObsge9AG77KZ1XNJzCXXks3vjAxvG + G4PeX4FXpEmyXLkG7dAl2Spdgt3QJOqVLsFe6BM302fQyZWhWQIbyPWOzAr6xWQHv2Mz1jy3KuWzDXLUp6us8i0y / 5OqoK9Pes9luoxL2i1JUwYYb9F2tashRBVtGOapgzw36lkY15Cg / 8mE5yo9 / WI7yoyCWoxqxUDXioUZFYqJGReKiRkVio0ZF4qNGQYz0EDlsuJmVMHPmLHFWZUn5tJ + 7srQrYmUpVpZiZSlWlpgqVpZiZSlWlmJlKVaWfmxcXP4dQvn3BuVnWcrPr5SfWSk / p1KNbEr5MlQhi1K + Z6xG9qR877hOZakts5F7IG9VKktapvaz2W6sLMXKUqwsxcpSrCw9Vca + Gv60GjFRrCzFytJ9KkvKl / zclSX1rFOsLMXKUqwsxcpSrCzFylKsLMXKUqws / di4uPw7hPLvDcrPspSfXyk / S1J + TqUa2ZTyZahCFqV8z1iN7En53nG9ytIOxRuvnkmm9SpLSqbms9lurCzFylKsLMXKUqwsPVXGvhr + tBoxUawsxcqSX1kyr5feGHxIXlVpICVAfPh8qDBFQnODObcbgtsjD + OwN8wVYc3lzHov4LbsKYy155jfcGnm2XxsQ jnIsVXV0HnMEM5swXk6u06QhcVzlbjKwSc6Xgg + uU290TOMdVu9FuYpba1gW5tGczjwKhYhTEL6iyeSTqjuwu8ANSuC2Xjd1yFo3SDYl4nhk5z6VA / DypCpvQ250ll43Zebj / XhCZ3SxBqj3kNZo1Uakv6hnqvdBPVwaPBSdbRr + szneKmV1hA + M + TGmiV1nUAPmHtcpDh9jVe + bOtJ3Nw4iVsbJ / GrjZN425G4RU8BZEut8VmSa4rHSq99o ++ LwjjTG2kf7Poh0ztraOhUUrdl + ORSjX8vxtKHuGe0 + BRmO398YZw9Ptyd5nIHckeocW4bnLWxMN8jnY0322LkoN56nTU6k8Zs + 5b2UD7z0txhwxS8L7Nuhd5M7WLdGOfxcUr4 / Tn3i1jMN + jGuCXGLdWMW1pU28339 + 1Cf6 / OBI4xTIxhYgwTY5gYw1Qvhtl7QAzzsKyL2tN + bPQSY5efPXb5MTsTZsZ3Y8yyURJvfsxStsQxTolxSplxivuN8ofkWtQJYTHXEuOVKsYrMdcS45aXFrfEXEuMYWIME34DTcy1xNjlpcQuMdcSY5aXErOULXGMU2KcUm6cYn / H6iG5ls6DopWYa4nxSsy1xLglxi0x1xJjmBjDPEUM03xADBNzLTF2qW7sEnMtMWZ5KTFL2RLHOCXGKQ + NU2wIf // 5QpgxQwgWimjUOyEe / k0hG / 6O9hmNV2 + M8Tm4lBzd4B6l3tNrvpdV52eyKBJa1280whXZnE3pv280nxrfOXhDEQNLOJGW4fLJojLbq3cSuhoSpkANGVAfI / HJGKF6x08IZ7cJ0do0vRy + vQy + vSAt68A47cUcnwnXVL0Mqp6ctQnZ2TQw9jDObtMF + KWBbXgtXQpXhz + BJ0SrxRUJR + Q2hdm / P69hnN2mSGafwpW5Vyhzz5HZxuo3ufot9RsmUaI5eZ5uqgHmOH2c289BSvUNtOgPgNxl9BqmNCP3EN6N4cM87Aj6Qu61rmVnUbljCnnxE AW + ExRnkve9pYwFVun4s7CIsz350 / N 2 / CcTo2 + Pvj369ujbo2 / FRN + eXwmNvj369ujbo2 + Pvv15fbsL40zNKXiSa / JjTGNfn4KMd0LnevQ1Xr2heftO7 / C7TnsJQVXPIdghzfdYjlhfvQc + MzGXHvcuuBupN2l + pyznUHykvufe7Pr4RNZn9LlMnE / dB54t + N2i74lzBop1GTWhQ3cuW0DRkdWeOznqEDczI4o82tBuC1o206qD4qvOelDczJZoF5hxs7OLLhTpZrD + fG7RKcFxjV0Pm02VxcH1vtlUmJucwagOBVahfqP1 ++ 6tRZgmIT9zCb5jRtlFs7r0Ua4e20kWFe7naMMTsj5ciQui7VJOfJDOVDONL9ajz + KrK1oT2slXOTztc5myddy2AG6rMqr42X5XZQiW1ZptTa1XyJawFlSDq0vxl / Qk6iy1JmHmaYul4PNfbArsR50zZY9rTBqSd77UCqTTZ1TtgeW9AkvZpco2r / qtdYbVJ2lvIWvVuOIzpr6lEvIOpObJ1dlsusSasVPHKluy1zwaxOfNG1IcUVV3In0MtjszOGrtukytE7mu2yqhfY8jB32Cy0B + QlmQW4gGNeucrHCRjudfMBbWTheTUDwypRlAyAp0lWVkax5K7V2Q / XHPB2IleVxS7KtmZD3KmuwR4 / UbkllruvYdHInrUwN3Ca / WOAv7ieKDRVrXUXVrxrEOrjJp1Iqr8 / y4RnRFq25T1h893mbBeHdyx7tTynjrT6grK4o61P3jfrqPuDDXS9pQO06pavSyQ88wb8HfbXkfrqMMPFOKfWVT3h / fJ3pBvh1ojc8Zxfglxi + BE7 + 0CuMX9RzM08Qv / DTelnwmLz9 + 8e21SvHL5kYvpk6vG7kMBT4DcQWeYkyfb + DZF /克/ rHg8w2 / qz9vhO7k7fOcF7vBT + Vn39tgdX8PNLIZ + wob3ghvQSpZJX9foiS7 + 7N4xzWkOBtDTBfziLuWfTelTJGRnfemjdUbMh SaWzWDfNfAFyB13Qx0bqjnSMhePoFWREbRyRlDPWZ + 6k82qe9muDwDp0qdjMTbsynyiOu / MyivZyvUa9UwMzthhmkXE + 0fOnttQRcd2YtdMbAxCsmVnvB6lmoEZ2RZDToAWs / dsc3xehqZRM3kghrRLjMRnqk3MqP3 / AUeAlD0 =

1 个答案:

答案 0 :(得分:1)

这是一个Zlib压缩的字符串,带有32字节的未压缩标头。

 var encoding = @"";
        byte[] data = Convert.FromBase64String(encoding);
        var compressedArray = new byte[data.Length - 32];
        Array.Copy(data, 32, compressedArray, 0, data.Length - 32);
        var decompressed = ZlibStream.UncompressBuffer(compressedArray);
        var str = Encoding.Unicode.GetString(decompressed);

标头包含偏移量为8的小端序列的未压缩长度数据:a5 d50xd5a4,等于54692.从此示例中很难判断未压缩长度是否为存储为a5 d5a5 d5 00 00a5 d5 00 00 00 00 00 00