我希望没有人可以复制我的应用程序的声音文件,因为它是受版权保护的。为此,我考虑将声音文件(.ogg)存储在wind文件中,并在运行时提取声音文件。
我们怎么能这样做?
谢谢你

最佳答案

我不能百分之百地确定wind文件是用于音频存储的安全文件类型,因此我基于一个理论:在我早期使用fft(快速傅立叶变换)生成音频数据的频谱,这些函数被称为“wind”类型。
这里有一个例子:https://github.com/bewantbe/audio-analyzer-for-android/blob/master/audioSpectrumAnalyzer/src/main/java/github/bewantbe/audio_analyzer_for_android/STFT.java

     (...line 74 ...)
     private void initWindowFunction(int fftlen, String wndName) {
         wnd = new double[fftlen];
         switch (wndName) {
             case "Bartlett":
                 for (int i=0; i<wnd.length; i++) {  // Bartlett
                     wnd[i] = asin(sin(PI*i/wnd.length))/PI*2;
                 }
                 break;
             case "Hanning":

如果存储这些数据,它可能是某种“wind文件”。早期版本的tm soft“white noise”将文件保存为wnd:https://www.tmsoft.com/white-noise/
现在你的问题是如何安全地存储文件。
谷歌声明你应该使用文件系统加密:https://developer.android.com/training/articles/security-tips
要为敏感数据提供附加保护,可以加密
使用无法直接访问的密钥的本地文件
申请。例如,您可以将密钥放在密钥库中,然后
使用未存储在设备上的用户密码保护它。
但这并不能保护数据免受
监控用户输入密码,为
没有文件系统加密的丢失设备。
我建议您使用以下方法在应用程序中加密然后解密:https://code.tutsplus.com/tutorials/storing-data-securely-on-android--cms-30558
通过加密你的文件,你的文件将是安全的,即使设备是根。

10-08 02:31