Các lập trình viên lo ngại về các hạn chế xuất khẩu từ Hoa Kỳ


21

Những khía cạnh nào tôi cần xem xét khi thiết kế và xuất bản phần mềm phải đáp ứng các hạn chế xuất khẩu của Hoa Kỳ đối với phần mềm mật mã?

Wikipedia nói rằng có nhiều loại khác nhau mà bạn có thể gán cho phần mềm mật mã. Và điểm đến xuất khẩu (ví dụ Trung Quốc, Nga) cũng đóng một vai trò quan trọng. Nhưng tôi không thực sự hiểu những hạn chế đó và ảnh hưởng của chúng đối với công việc của tôi.

Ai có thể giải thích điều đó cho tôi?

Tôi đang hỏi bởi vì nếu bạn cố gắng xuất bản ứng dụng của mình (ví dụ: trên App Store của Apple hoặc Android's Market), bạn phải đảm bảo rằng ứng dụng của bạn đáp ứng các hạn chế xuất khẩu của Hoa Kỳ. Và có rất nhiều ứng dụng cung cấp lưu trữ thông tin an toàn, ví dụ như cho mật khẩu.

Có phải tất cả họ đã thông báo cho chính phủ và yêu cầu xem xét lại? Tất nhiên, bạn không thể biết nếu họ đã làm. Nhưng họ có cần phải làm điều này?


1
Tiên lượng đầu tiên của bạn đã trở thành sự thật. Nhưng liên quan đến câu hỏi thứ hai: Đây là một câu hỏi thú vị cho nhiều lập trình viên, phải không? Nhiều người đã xuất bản phần mềm sử dụng thuật toán mã hóa. Vì vậy, ai đó phải biết.
caw

Vâng chắc chắn, điều đó không có nghĩa là bất cứ ai cũng chắc chắn về những gì bạn đã làm để cho bạn lời khuyên dứt khoát. Xem "đi gặp luật sư" dưới đây!
Bến

Bạn có thể kiểm tra trang web Trin để biết thêm chi tiết
Ubermensch

1
Đối với một cái gì đó như thế này, tôi sẽ tham khảo ý kiến ​​một luật sư. Sự nghiệp của tôi là trong ngành công nghiệp quốc phòng, bao gồm cả tại các nhà thầu tạo ra sản phẩm cho khách hàng trong nước cũng như nước ngoài. Không chỉ có một nhóm pháp lý, mà các chuyên gia kiểm soát xuất khẩu cụ thể xem xét mọi thứ để đảm bảo rằng nó tuân theo các hướng dẫn. Có rất nhiều điều nhỏ cần chú ý và dựa vào câu trả lời từ nhà phát triển phần mềm là không khôn ngoan vì thật dễ dàng bỏ qua điều gì đó quan trọng.
Thomas Owens

1
Cảm ơn, Thomas. Tôi chỉ nghĩ rằng đó có thể là một trường hợp rõ ràng vì có rất nhiều ứng dụng trong Android Market (tất cả phải đáp ứng các nguyên tắc) sử dụng Mã hóa AES. Hãy tưởng tượng, tất cả các ứng dụng ngân hàng, ứng dụng lưu trữ mật khẩu, v.v ... Và tôi không bán các ứng dụng của mình, tôi cung cấp chúng miễn phí. Vì vậy, hỏi một luật sư là tốn kém.
kêu gọi

Câu trả lời:


15

Nếu mã của bạn là nguồn mở , các hạn chế rất nhẹ : bạn không thể xuất mã của mình sang các quốc gia hoặc thực thể bị hạn chế và bạn phải thông báo cho chính phủ về vị trí nơi họ có thể tải xuống các tệp nguồn và đối tượng . Bạn phải thực hiện một số nỗ lực để ngăn chặn mã được tải xuống bởi Cuba, Iran, Libya, Bắc Triều Tiên, Syria và Sudan . Bạn phải yêu cầu tất cả người dùng của bạn không xuất khẩu sang các quốc gia này.

Bạn sẽ được yêu cầu chuẩn bị danh sách tất cả các "gói" và "tệp" có chứa các nguyên hàm mã hóa. (Tôi nhớ rằng chúng tôi được phép bỏ qua các nguyên hàm băm chỉ được sử dụng để xác thực hoặc kiểm soát tính toàn vẹn .)

Nếu mã của bạn không phải là nguồn mở, bạn phải nộp các ngoại lệ cho mã của riêng bạn. Tôi hy vọng bạn sẽ cần chuẩn bị danh sách các tệp nguồn / đối tượng tương tự và thuật toán nào được triển khai cho các cơ chế nào. Tôi cũng mong đợi nó sẽ yêu cầu xem xét trước khi giấy phép được cấp.

Mặc dù tôi tin rằng tất cả thông tin của tôi là chính xác vào ngày 30 tháng 12 năm 2011, tôi không phải là luật sư và không thể cung cấp cho bạn lời khuyên pháp lý. Đây chỉ đơn giản là con trỏ đến các nguồn lực hiện có của chính phủ Hoa Kỳ.


1
Cảm ơn bạn! Điều này nghe thực sự phức tạp và khó khăn. Vui lòng xem phần chỉnh sửa của tôi trong câu hỏi: Giải thích của bạn ngay cả trong trường hợp này hay chỉ dành cho phần mềm cho phép người dùng mã hóa hoặc giải mã thông tin một cách tự do?
caw

Tôi nhớ rằng mật khẩu băm không phải là một trong những điều họ quan tâm - vì vậy nếu đó là tất cả các ứng dụng của bạn, bạn gần như chắc chắn sẽ ổn. Tôi không thể nói cho những gì bất kỳ tác giả ứng dụng nào khác làm ...
sarnold

OK cảm ơn bạn. Vì vậy, nếu chúng ta lấy một ứng dụng ngân hàng trực tuyến hoặc mật khẩu an toàn làm ví dụ - cả hai đều mã hóa dữ liệu để lưu trữ an toàn: Điều này có ổn hay phải báo cáo và xem xét?
caw

Nếu bạn đang phụ thuộc 100% vào hệ điều hành máy chủ để cung cấp các nguyên hàm mã hóa, bạn không phải làm gì cả. :)
đăng

1
TỪ CHÍNH SÁCH CHÍNH SÁCH JURISDICTION CHÍNH SÁCH CỦA JAVA: Kiến trúc JCE cho phép cấu hình sức mạnh mật mã linh hoạt thông qua các tệp chính sách thẩm quyền. Do các hạn chế nhập khẩu của một số quốc gia, các tệp chính sách quyền tài phán được phân phối với phần mềm Java SE 7 có các hạn chế tích hợp về sức mạnh mã hóa có sẵn. Các tệp chính sách quyền tài phán trong gói tải xuống này (gói bao gồm tệp README này) không chứa các hạn chế đối với các thế mạnh về mật mã. Điều này phù hợp với hầu hết các quốc gia.
kêu

7

Bạn đang viết các thói quen mật mã của riêng bạn hay chỉ gọi một thói quen của bên thứ 3?

Lý do tôi hỏi là vì nếu ví dụ trên Windows bạn đang sử dụng một trong những thói quen do Microsoft cung cấp thì bạn không phải là người xuất bản hoặc phân phối phần mềm được kiểm soát, trong trường hợp đó phần mềm của bạn sẽ không bị hạn chế.


Cảm ơn câu trả lời! Nếu điều này là đúng, nó sẽ rất tuyệt :) Tôi sẽ sử dụng các thuật toán nổi tiếng như AES, SHA, v.v. Vì vậy, tôi sẽ sử dụng lại các thuật toán khác và gọi các hàm riêng. Tôi sẽ không xuất bản thuật toán mật mã của riêng tôi.
caw

Marco: Đó chắc chắn là con đường để đi. Bạn đang nhắm mục tiêu hệ điều hành nào?
JonnyBoats

3
Marco: Mã chương trình của bạn chỉ đơn giản là sử dụng thói quen tốt nhất có sẵn trên điện thoại của khách hàng, kiểm tra thời gian chạy. Bên cạnh bao nhiêu sản phẩm bạn sẽ bán ở Cuba hoặc Bắc Triều Tiên?
JonnyBoats

1
Nếu bạn sử dụng tiền điện tử thông thường do Microsoft cung cấp trên Windows, thì bạn sẽ không xuất nội dung đó vì bạn không cung cấp nó. Nếu nó đã ở đó, có lẽ sẽ ổn khi gọi nó. Sử dụng các triển khai tiêu chuẩn của các thuật toán tiêu chuẩn vẫn đang cung cấp tiền điện tử và bạn cũng có thể xuất nó. (Ngoài ra, đừng viết phần mềm bảo mật của riêng bạn cho mục đích sản xuất, trừ khi bạn có kinh nghiệm trong lĩnh vực này. Có quá nhiều điều bạn có thể dễ dàng mắc phải.)
David Thornley

1
Tôi khá chắc chắn rằng bạn vẫn cần phải gửi tất cả những thứ xuất khẩu tiền điện tử đó nếu bạn chỉ sử dụng API tiền điện tử.
CodeInChaos

1

Nếu đây chỉ là một câu hỏi vì lợi ích, thì những câu trả lời khác là tuyệt vời. Nếu nó liên quan đến một cái gì đó bạn đang thực sự làm?

ĐI XEM MỘT Luật sư. HIỆN NAY.

Bạn vẫn đang chờ đợi? Sau đó tôi sẽ mở rộng.

Đi gặp luật sư. Hiện nay. Đừng chờ đợi, đừng suy nghĩ. Nếu bạn chưa có, hãy tìm một cái. Yêu cầu họ liên lạc với bạn với một người xử lý luật kinh doanh như một công việc . Kiểm tra thông tin đăng nhập của anh ấy, và nếu họ nhìn đúng, hãy ngồi xuống với người đó và cung cấp cho họ tiền để được tư vấn. Hãy thương lượng về các điều khoản.

Nếu bạn không tin tưởng tôi và tôi sẽ thừa nhận rằng tôi rất chắc chắn không có nhiều kinh nghiệm trong lĩnh vực này, hãy đọc bài viết này, được viết vào tháng 5 năm 2010 , bởi một người nào đó đang điều hành một doanh nghiệp gia đình thành công từ năm 93.

Nếu bạn đang cố gắng điều hành một doanh nghiệp trò chơi Indie, trước tiên, bạn là người điều hành một doanh nghiệp. Tất cả các luật địa phương, tiểu bang và liên bang áp dụng. Bạn cần một giấy phép kinh doanh. Hoặc giấy phép. Mỗi doanh nghiệp nên có một luật sư và một kế toán viên. Cá nhân tôi đã làm mà không cần một luật sư chuyên dụng trên máy (một khóa học không khôn ngoan), nhưng mỗi doanh nghiệp nên có một kế toán viên lành nghề.

Điều này có nghĩa là ai đó có doanh nghiệp bao gồm hai người bán trò chơi trong đó thằn lằn mặc áo giáp đánh bại yêu tinh nhận thức được rằng anh ta đang gặp rủi ro khi không được tiếp cận với luật sư cá nhân của mình .

Bạn có phải là một doanh nghiệp? Đừng biết nữa. Nếu bạn đang bán một cái gì đó, bạn cũng có thể. Đoán xem ai sẽ biết? Một luật sư .

Bạn không phải trả tiền cho một luật sư đắt tiền trong một thời gian dài, nhưng ít nhất bạn cần phải có người sẵn sàng hẹn gặp, người mà bạn có thể điều hành mọi việc trước khi làm những việc có thể nguy hiểm về mặt pháp lý và ai có thể giải thích cho bạn có thể nguy hiểm về mặt pháp lý

Bởi vì đây là điều. Nếu bạn làm điều đó lên phía trước, sau đó nhiều điều áp dụng.

  1. Bạn ít có khả năng làm hỏng và thu hút sự chú ý của chính phủ.
  2. Bạn nhận thức rõ hơn khi bạn gặp rắc rối và phải làm gì với nó, bao gồm cả một liên hệ hiện có mà bạn có thể gọi để giúp bạn.
  3. Nếu bạn làm hỏng và thu hút sự chú ý của chính phủ, bạn có thể giải thích rằng bạn đã cố gắng làm mọi thứ đúng, và có các ghi chú từ luật sư để chứng minh điều đó.

Nếu bạn không? Chà, gần đây tôi phát hiện ra rằng nếu bạn biết rằng bạn không đủ khả năng để xử lý một việc gì đó và bạn không tìm kiếm lời khuyên, điều đó có nghĩa là về mặt pháp lý có nghĩa là bạn cố tình chọn cách làm hỏng việc. Tiền, đó là gian lận. Trong các lệnh trừng phạt xuất khẩu, tôi nghĩ nó có cùng quy mô với tội phản quốc.

Về nghiên cứu trên internet: Bài đăng trên blog này được viết vào ngày 17 tháng 1 năm 2011. Và điều đầu tiên nó nói ở đó là gì? Rằng thứ này thay đổi gần đây. Vì vậy, nó có thể thay đổi một lần nữa. Nó đã có thể đã thay đổi. Điều đó có nghĩa là nếu ai đó mù quáng theo dõi 3 năm kể từ bây giờ, cuối cùng họ có thể phải dành thời gian nghiêm túc để giải thích cho những người đàn ông bị mê hoặc rằng họ không phải là kẻ phản bội, họ chỉ đủ để nghĩ rằng các bài đăng trên blog là tài liệu hợp pháp.

Làm cho tôi một sự giúp đỡ cho sự an tâm của riêng tôi. Đi gặp luật sư.


Cảm ơn bạn rất nhiều vì câu trả lời chi tiết này. Chỉ là tôi nghĩ đó là một trường hợp rõ ràng và dễ quyết định. Tôi đã viết trong bình luận cho câu hỏi (ở trên) tại sao tôi nghĩ điều này.
kêu

Có, và bạn có thể có thể tham khảo trực tiếp Apple trong trường hợp này để có được quy tắc của họ, nếu bạn chỉ xuất bản thông qua App Store và nếu Ứng dụng của bạn không làm bất cứ điều gì đặc biệt mới lạ với mã hóa. Thành thật mà nói, tôi tưởng tượng rằng khi bạn gửi, nếu nó không tuân thủ, họ sẽ ném lại. Họ sẽ có biện pháp bảo vệ riêng để ngăn App Store ra khỏi các quốc gia bị trừng phạt. Họ cũng có đội ngũ pháp lý riêng để giải quyết vấn đề này và điều đó được tính là giao dịch với luật sư.
deworde

1
Câu hỏi tôi trả lời là khái quát hơn "Tôi cần xem xét khía cạnh nào khi thiết kế và xuất bản phần mềm phải đáp ứng các hạn chế xuất khẩu của Hoa Kỳ đối với phần mềm mật mã?" Đối với các công cụ cụ thể của Android / iOS, thì những người cần tham khảo sẽ là Apple và Google. Gửi cho họ một e-mail đặt ra những gì bạn dự định làm, và họ có thể sẽ có một quy trình được đặt ra cho bạn.
deworde

Nhưng nếu có gì đó không ổn, tôi nên giữ luật sư địa phương biết về sự tồn tại của bạn và những gì bạn đang làm. Chỉ trong trường hợp.
deworde

Cảm ơn ý kiến ​​bổ sung của bạn. Tôi sẽ ghi nhớ lời nói của bạn;)
caw

0

Một câu trả lời hơi khác, nhưng tại sao lại viết mã mã hóa ở Mỹ? Ngay cả khi bạn viết phần còn lại của sản phẩm ở Hoa Kỳ, sẽ rất có ý nghĩa khi thực hiện các phần mã hóa ở nơi khác. Bạn vẫn có thể bán sản phẩm của mình ở Hoa Kỳ, nhưng bạn nhập khẩu vào Hoa Kỳ, thay vì xuất khẩu từ Hoa Kỳ.

Bên cạnh đó, trong những ngày đầu PGP, các quy tắc xuất khẩu đã được bỏ qua bằng cách in một cuốn sách có chứa mã nguồn và xuất sách.


3
Đây là một ý kiến ​​tồi. Các quy định về Xử phạt / Xuất khẩu của Hoa Kỳ áp dụng cho bất kỳ công ty nào đã đăng ký tại Hoa Kỳ và xác định nhà cung cấp cũng như doanh số. Vâng, với một luật sư rất thông minh, bạn có thể tìm thấy những ví dụ về những người cào xé xung quanh họ bằng cách sử dụng mánh khóe pháp lý điên rồ, nhưng KHÔNG. Các công ty lớn phải trả hàng trăm triệu bảng nếu họ làm hỏng việc này. Công ty nhỏ, ai cũng đi tù, phá sản hoặc cả hai.
deworde
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.