ITSAppUsesNonExemptEncryption kepatuhan ekspor saat pengujian internal?

215

Saya mendapat pesan ini ketika memilih build untuk pengujian internal. Itu mengatakan tentang pengaturan ITSAppUsesNonExemptEncryption di info.plist apa artinya? Apakah itu perlu?

masukkan deskripsi gambar di sini

Avijit Nagare
sumber
3
Secara harfiah menanyakan apakah Anda menggunakan kriptografi / / apakah aplikasi Anda dirancang untuk menyimpan informasi yang aman secara kriptografis.
Andriko13
1
Pada 20 September 2016, ini tidak lagi diperlukan. Lihat jawaban saya di sini: stackoverflow.com/a/40391664/776167 - Anda dapat mengatakan Anda dikecualikan.
hisnameisjimmy

Jawaban:

217

Pada dasarnya <key>ITSAppUsesNonExemptEncryption</key><false/>singkatan dari nilai Boolean sama dengan NO.

nilai info. daftar

Pembaruan oleh @JosepH: Nilai ini berarti bahwa aplikasi tidak menggunakan enkripsi, atau hanya enkripsi yang dikecualikan. Jika aplikasi Anda menggunakan enkripsi dan tidak dikecualikan, Anda harus menetapkan nilai ini ke YA / benar.

Tampaknya kadang-kadang bisa diperdebatkan ketika aplikasi dianggap menggunakan enkripsi.

Elijah Saounkine
sumber
1
terima kasih - ini persis apa yang saya cari (bagaimana cara menambahkan kunci ini ke dalam file grafis)
Natalia
2
Mengatur 'ITSAppUsesNonExemptEncryption' ke false / TIDAK TIDAK berarti enkripsi di aplikasi Anda tidak berubah. Ini berarti bahwa aplikasi tidak menggunakan enkripsi, atau hanya enkripsi yang dikecualikan. Jika aplikasi Anda menggunakan enkripsi dan tidak dikecualikan, Anda harus menetapkan nilai ini ke YA / benar. Beberapa aplikasi dapat mengatur ini menjadi TIDAK; misalnya jika ada bagian dari aplikasi Anda menggunakan https Anda hampir pasti perlu mengatakan YA. Lihat stackoverflow.com/questions/2135081/...
JosephH
1
@ JosephephH baik-baik saja, terima kasih banyak atas wawasannya, memang informasi Anda kelihatannya benar
Elijah Saounkine
23
Anda biasanya tidak perlu mengatur ini ke YA jika Anda menggunakan https. Lihat Catatan 4 dari Kategori 5 bagian 2 . Sebagian besar, jika tujuan utama aplikasi bukan enkripsi, Anda dapat mengatur nilainya menjadi TIDAK. Ada beberapa peringatan di sini, seperti apakah Anda bersedia memberikan informasi berdasarkan permintaan dari "otoritas yang sesuai", jadi bacalah dengan cermat.
Ben Kane
1
Enkripsi HTTPS diterapkan pada tingkat OS; aplikasi tidak masuk ke masalah sebenarnya ciphering data. Dalam pemahaman saya, saran Ben Kane benar.
Elijah Saounkine
61

Menurut WWDC2015, Distribusi Whats New

masukkan deskripsi gambar di sini

Mengatur "ITSAppUsesNonExemptEncryption" menjadi "NO" di info.plist berfungsi dengan baik. jika tidak ada konten kriptografi di aplikasi Anda.

masukkan deskripsi gambar di sini

Saya mendapatkan pop up ini Selama memilih build untuk pengujian internal, saya tidak memasukkan kunci "ITSAppUsesNonExemptEncryption" di info.plist saya tetapi masih berfungsi untuk saya.

Bahkan saya berhasil mengunggah aplikasi baru tidak termasuk kunci "ITSEncryptionExportComplianceCode" dan "ITSAppUsesNonExemptEncryption".

Juga Apple Doc.

Penting: Jika aplikasi Anda mengharuskan Anda memberikan dokumen tambahan untuk tinjauan enkripsi, aplikasi Anda tidak akan memiliki status Ready for Sale di toko sampai Kepatuhan Ekspor telah meninjau dan menyetujui dokumen Anda. Aplikasi tidak dapat didistribusikan untuk pengujian pra-rilis hingga Kepatuhan Ekspor telah meninjau dan menyetujuinya.

Jika aplikasi Anda tidak menggunakan enkripsi dan Anda tidak ingin harus menjawab pertanyaan-pertanyaan ini pada saat pengiriman, Anda dapat memberikan informasi kepatuhan ekspor dengan bangunan Anda. Anda juga dapat memberikan dokumentasi baru atau yang diperbarui melalui iTunes Connect untuk menerima nilai string kunci yang sesuai untuk disertakan dengan bangunan Anda sebelum mengunggahnya ke iTunes Connect.

Untuk menambahkan dokumentasi kepatuhan ekspor di iTunes Connect:

Pergi ke bagian Enkripsi di bawah Fitur. Klik tanda plus di sebelah bagian platform yang sesuai. Jawab pertanyaan dengan tepat. Lampirkan file saat diminta. Klik Simpan. Dokumen Anda akan segera dikirim untuk ditinjau dan status dokumen Anda akan ditampilkan di Tinjauan Kepatuhan. Nilai kunci juga akan dihasilkan secara otomatis yang dapat Anda sertakan dalam file Info.plist Anda. Untuk informasi lebih lanjut tentang memasukkan nilai kunci dengan bangunan Anda, lihat bagian Sumber Daya dan Bantuan Kepatuhan Perdagangan.

Anda dapat mengunggah bangunan tanpa kunci kepatuhan ekspor. Jika Anda memasukkan kunci, itu dapat menunjukkan bahwa Anda tidak memerlukan dokumentasi kepatuhan ekspor; ini tidak memerlukan persetujuan. Jika Anda memasukkan kunci yang merujuk pada dokumen kepatuhan ekspor tertentu, dokumen itu harus disetujui; itu tidak bisa di Tinjau atau Ditolak.

masukkan deskripsi gambar di sini

Anda dapat meninjau jawaban Anda kapan saja dengan mengklik nama file dokumen dan memilih Informasi Lainnya. Jika Anda perlu memperbarui dokumentasi Anda atau mengubah salah satu jawaban atas pertanyaan, Anda harus mengulangi langkah-langkah di atas untuk menambahkan dokumen baru yang sesuai dengan perubahan Anda.

Avijit Nagare
sumber
Untuk lebih. stackoverflow.com/questions/2135081/…
Avijit Nagare
51

Tambahkan kunci ini dalam file plist ... Semuanya akan baik-baik saja ..

<key>ITSAppUsesNonExemptEncryption</key>  
<false/>

Tempelkan sebelumnya </dict></plist>

Akshay Phulare
sumber
25

Apple telah menyederhanakan proses pembangunan kami, jadi Anda tidak perlu mengklik kotak centang yang sama setiap kali. Anda dapat merampingkan aliran iTC Anda dengan mengkompilasi flag ini ke dalam aplikasi.

Ini masih terjadi sampai 2019.

Pedro Góes
sumber
17

Untuk memilih dari dropdown, silakan mulai mengetik baris berikut:

Aplikasi Menggunakan Enkripsi Tanpa-Pembebasan

mriaz0011
sumber
12

Pada dasarnya ada 2 hal yang perlu diingat. Anda hanya diizinkan untuk menyetelnya menjadi TIDAK jika Anda tidak menggunakan enkripsi sama sekali , atau Anda adalah bagian dari peraturan yang dikecualikan . Ini berlaku untuk jenis aplikasi berikut:

Sumber: Kamar Dagang : https://www.bis.doc.gov/index.php/policy-guidance/encryption/encryption-faqs#15

Aplikasi konsumen

  • pembajakan dan pencegahan pencurian untuk perangkat lunak atau musik;
  • musik, film, lagu / musik, foto digital - pemain, perekam, dan penyelenggara
  • permainan / permainan - perangkat, perangkat lunak runtime, HDMI dan antarmuka komponen lainnya, alat pengembangan
  • TV LCD, Blu-ray / DVD, video sesuai permintaan (VoD), bioskop, perekam video digital (DVR) / perekam video pribadi (PVR) - perangkat, panduan media online, integritas dan perlindungan konten komersial, HDMI dan komponen lainnya antarmuka (bukan konferensi video);
  • printer, mesin fotokopi, pemindai, kamera digital, kamera Internet - termasuk bagian dan sub-rakitan
  • utilitas dan peralatan rumah tangga

Aplikasi bisnis / sistem: operasi sistem, integrasi dan kontrol. Beberapa contoh

  • otomatisasi proses bisnis (BPA) - perencanaan dan penjadwalan proses, manajemen rantai pasokan, inventaris, dan pengiriman

  • transportasi - keselamatan dan pemeliharaan, pemantauan sistem dan pengendali di kapal (termasuk penerbangan, kereta api, dan sistem otomotif komersial), teknologi 'jalan raya pintar', operasi angkutan umum dan pengumpulan tarif, dll.

  • sistem industri, manufaktur atau mekanik - termasuk robotika, keselamatan pabrik, utilitas, pabrik dan alat berat lainnya, pengontrol sistem fasilitas seperti alarm kebakaran dan HVAC

  • medis / klinis - termasuk aplikasi diagnostik, penjadwalan pasien, dan kerahasiaan data medis

  • geosains terapan - penambangan / pengeboran, pengambilan sampel atmosfer / pemantauan cuaca, pemetaan / survei, bendungan / hidrologi

Penelitian / ilmiah / analitik. Beberapa contoh:

  • manajemen proses bisnis (BPM) - abstraksi dan pemodelan proses bisnis

  • visualisasi / simulasi / co-simulasi ilmiah (tidak termasuk alat untuk komputasi, jaringan, kriptanalisis, dll.)

  • alat sintesis data untuk ilmu sosial, ekonomi, dan politik (misalnya, ekonomi, populasi, perubahan iklim global, jajak pendapat publik, dll. peramalan dan pemodelan)

Mengamankan pengiriman dan pemasangan kekayaan intelektual. Beberapa contoh

  • penginstal otomatis dan pembaruan perangkat lunak

  • perlindungan produk kunci lisensi dan validasi pembelian serupa

  • perangkat lunak dan desain perangkat keras perlindungan IP

  • perangkat lunak desain berbantuan komputer (CAD) dan alat bantu penyusunan lainnya

Catatan: Peraturan ini juga berlaku untuk menguji aplikasi Anda menggunakan TestFlight

pembuat kode produksi
sumber
4

Kesalahan yang sama terpecahkan seperti ini

masukkan deskripsi gambar di sini

    using UnityEngine;
    using System.Collections;
    using UnityEditor.Callbacks;
    using UnityEditor;
    using System;
    using UnityEditor.iOS.Xcode;
    using System.IO;

public class AutoIncrement : MonoBehaviour {

    [PostProcessBuild]
    public static void ChangeXcodePlist(BuildTarget buildTarget, string pathToBuiltProject)
    {

        if (buildTarget == BuildTarget.iOS)
        {

            // Get plist
            string plistPath = pathToBuiltProject + "/Info.plist";
            var plist = new PlistDocument();
            plist.ReadFromString(File.ReadAllText(plistPath));

            // Get root
            var rootDict = plist.root;

            // Change value of NSCameraUsageDescription in Xcode plist
            var buildKey = "NSCameraUsageDescription";
            rootDict.SetString(buildKey, "Taking screenshots");

            var buildKey2 = "ITSAppUsesNonExemptEncryption";
            rootDict.SetString(buildKey2, "false");


            // Write to file
            File.WriteAllText(plistPath, plist.WriteToString());
        }
    }
    // Use this for initialization
    void Start () {

    }

    // Update is called once per frame
    void Update () {

    }

    [PostProcessBuild]
    public static void OnPostprocessBuild(BuildTarget target, string pathToBuiltProject)
    {
        //A new build has happened so lets increase our version number
        BumpBundleVersion();
    }


    // Bump version number in PlayerSettings.bundleVersion
    private static void BumpBundleVersion()
    {
        float versionFloat;

        if (float.TryParse(PlayerSettings.bundleVersion, out versionFloat))
        {
            versionFloat += 0.01f;
            PlayerSettings.bundleVersion = versionFloat.ToString();
        }
    }
    [MenuItem("Leman/Build iOS Development", false, 10)]
    public static void CustomBuild()
    {
        BumpBundleVersion();
        var levels= new String[] { "Assets\\ShootTheBall\\Scenes\\MainScene.unity" };
        BuildPipeline.BuildPlayer(levels, 
            "iOS", BuildTarget.iOS, BuildOptions.Development);
    }

}
Rıfat Erdem Sahin
sumber
menambahkan baris kode terkait sehingga dev dapat menggunakan untuk menambahkan kunci yang diperlukan
Rıfat Erdem Sahin
Paham, hapus komentar saya. Terima kasih
Bhargav Rao
4

Apple telah mengubah aturan tentang ini. Saya membaca semua dokumen Apple dan sebanyak mungkin peraturan ekspor AS yang bisa saya temukan.

Pandangan saya tentang hal ini sampai saat ini bahkan menggunakan HTTPS untuk sebagian besar aplikasi berarti Apple akan memerlukan sertifikat ekspor. Beberapa aplikasi seperti perbankan akan baik-baik saja tetapi untuk banyak aplikasi mereka tidak termasuk dalam kategori pengecualian yang sangat, sangat luas.

Namun Apple sekarang telah memperkenalkan tempat keluar di bawah kategori bebas untuk aplikasi yang HANYA menggunakan https. Saya tidak tahu kapan mereka melakukan ini, tetapi saya pikir itu baik Desember 2016 atau Januari 2017. Kami sekarang mengirimkan aplikasi kami tanpa sertifikat dari Pemerintah AS.

Rob Willett
sumber
1
Tautan ke dokumentasi "keluar"? Saya tidak dapat menentukan apakah HTTPS baik-baik saja atau tidak.
gbhall
@ gbhall Tidak diperlukan untuk HTTPS. Anda dapat mencoba mendaftar dan Anda bahkan tidak akan melewati formulir aplikasi lagi dari situs GOV. (tidak ingat namanya)
@Sneak OK bersorak man. Semoga itu tetap benar menuju masa depan.
gbhall
@Sneak menghibur pria. Contoh yang lebih baru ini tampaknya menunjukkan Anda perlu mengirimkan laporan tahunan: stackoverflow.com/a/44396900/333733
gbhall
1
@Sneak pasti sesuatu untuk melihat lebih banyak. Terima kasih atas tautannya. Hanya HTTPS saat ini.
gbhall