소프트웨어도 특허가 가능할까?
안녕하세요.
제가 특허 관련 일을 해서, 일을 하다가 소프트웨어 특허 관련해서 많은 질문을 받는데요. 제가 받았던 질문들에 대한 저의 의견을 공유하고자 합니다. 글이 조금 길어질 수도 있을 것 같아서, 질문 목록을 보시면서 평소에 궁금하셨던 사항이 있으시다면, 그 부분만 보셔도 좋을 것 같습니다.
<목록>
- 소프트웨어도 특허를 받을 수 있나요?
- 개발 언어마다 특허권을 따로 받아야 하나요?
- 다른 업체가 나의 특허와 유사한 소프트웨어를 사용하는 것 같습니다. 그렇지만 다른 업체의 코드를 확인해 볼 수 없는 상태입니다. 다른 업체가 내 특허를 침해한다는 것을 어떻게 확인할 수 있을까요?
- 내 소프트웨어의 알고리즘을 특허로 보호받는 것과, 비밀로 유지하는 것(영업비밀) 중 무엇이 더 좋을까요?
- 요즘 많은 IT 업체들이 오픈소스로 기술을 공개합니다. 오픈소스로 공개하면 특허를 받지 못하나요?
1. 소프트웨어도 특허를 받을 수 있나요?
가능합니다.
이때 소스코드 자체를 특허로 등록 받는 것이 아니라, 소스코드가 어떠한 알고리즘을 수행하도록 짜여졌는 지, 코드가 수행하는 중요 동작만을 우리가 사용하는 일반적인 언어(한글)로 작성하여 보호하는 것입니다.
—————————————————————————————————————————
간단한 예시로서, 문자열을 출력하는 알고리즘을 특허로 작성한다고 하였을 때,
—————————————————————————————————————————
(1) C++로 작성된 코드는 아래와 같다고 합시다.
#include <stdio.h>
int main()
{
char c1;
scanf("%c", &c1);
printf("%c", c1);
return 0;
}
(2) 위 코드를 특허로 작성하는 경우, 아래와 같이 코드가 수행하는 핵심 동작만을 한글로 표현합니다.
A를 입력 받는 단계;
상기 A를 출력하는 단계;
를 수행하는 명령어를 포함하는 ~
—————————————————————————————————————————
이에 따라, 나의 개발 언어와 다른 개발 언어를 사용하는 소프트웨어라도, 코드가 수행하는 핵심 동작이 같다면 특허권을 행사할 수 있습니다.
2. 개발 언어마다 특허권을 따로 내야 하나요?
개발 언어와 상관없이 하나의 특허로 소프트웨어를 보호받을 수 있습니다. 어느 개발 언어로 작성되었든, 타인의 소프트웨어가 내가 개발한 소스코드의 역할과 같은 역할을 수행한다면 나의 특허를 침해하게 되는 것입니다. 앞 질문 목차 1의 내용과 유사한 내용입니다.
소프트웨어 특허는 코드가 수행하는 핵심 동작만을 일반적인 언어(한글)로 작성합니다.
목차 1의 예시에서도 헤더파일의 선언이나, 문자 변수를 선언하는 과정의 코드는 특허의 언어에서는 표현되지 않았지요. 컴퓨터 언어마다 호출하는 객체나 라이브러리가 다르지만, 이러한 컴퓨터 언어마다 각각의 특성까지 특허에 작성할 필요는 없고, 내가 새롭게 작성한 알고리즘의 부분만 특허에 기재합니다.
따라서, 위 목차 1의 예시코드를 특허로 등록받았다면, 타인이 어느 개발 언어로 소프트웨어를 개발하였든, 그 소프트웨어가 A를 입력받아 A를 출력하는 과정을 수행한다면 나의 특허를 침해하게 되는 것입니다.
3. 다른 업체가 나의 특허와 유사한 소프트웨어를 사용하는 것 같습니다. 그렇지만 다른 업체의 코드를 볼 수 없는 상태입니다. 다른 업체가 내 특허를 침해한다는 것을 어떻게 확인할 수 있을까요?
일단은 ‘소송’까지 가지 않는 한 상대방의 코드 공개를 강제시킬 수는 없습니다. 또한 소송은 시간이나 비용이 크게 발생한다는 단점이 있습니다.
그렇지만, 다른 업체가 나의 특허와 유사한 소프트웨어를 사용하는 것 같다고 생각하신 것은, 상대방의 소프트웨어 동작이 나의 소프트웨어와 비슷할 것이라고 표면적인 서비스 형태로 예측할 수 있었기 때문일 것입니다.
이러한 경우, ‘권리범위확인 심판’이라는 제도를 통해 상대방이 실시하는 서비스가 나의 특허권 범위에 속하는 것인지 ‘특허청’에 판단을 구할 수 있습니다.
이때는 상대방의 코드까지 특정할 필요 없이, 내 특허와 상대방의 사용하는 서비스 형태가 어떠한 점이 유사한 지 정도만을 특정하여 확인을 구하면 됩니다.
또한, ‘법원’에 제기하는 ‘소송’에 비해, 상대적으로 결과를 신속하게 받을 수 있고 비용도 적으며, 소송을 가기 전에 원만하게 분쟁을 해결할 수 있다는 이점이 있습니다.
한편, 대기업끼리의 분쟁이라면 심판에 이어 소송까지 이어질 수 있지만, 이러한 경우 양측 모두 시간 및 비용적으로 큰 손해가 발생하기 때문에, 대부분의 분쟁에서는 심판 결과에 따라 합의를 진행하는 방식으로 분쟁이 종결되고 있습니다.
아래는 소프트웨어 분쟁 관련하여 최근 있었던 ‘버즈빌’과 ‘쿠차’의 분쟁 사례입니다.
‘버즈빌’은 소프트웨어 특허를 보유하면서 서비스를 실시했는데, ‘쿠차’가 유사한 서비스를 실시하는 것으로 판단하여, 권리범위확인심판 등을 제기하여 승소하였고, 최종적으로는 분쟁을 종결하기로 합의하였습니다. 이때 합의의 내용이 무엇인지는 공개되지 않았으나, ‘쿠차’가 ‘버즈빌’에 어느 정도 라이센스 비용을 지불하는 것으로 마무리된 것이 아닐까 생각이 됩니다.
버즈빌-쿠차 분쟁: http://www.venturesquare.net/742068
버즈빌-쿠차 합의: http://www.sisajournal-e.com/biz/article/171074
한편, 질문과 별개로 생각해볼 점으로, ‘쿠차’ 또한 등록 받은 특허가 있었다면 어떻게 되었을까요? 만약 ‘쿠차’ 또한 자신의 고유 기술을 특허로 등록 받아 놓았다면, 공격적인 대응을 할 수 있었을 것입니다. 이러한 경우 오랜 분쟁은 양측에게 모두 막대한 손해를 발생시키므로, 서로에 대해서는 특허권 침해를 묻지 않겠다는 화해를 통해, 각자가 서비스하는 것으로 결론짓는 경우가 많습니다.
이처럼, 특허는 현재 시장에서 남들이 시장에 쉽게 진입하지 못하게 하는 것뿐만 아니라, 분쟁이 발생하였을 때 분쟁을 원만하게 해결할 수 있도록 협상의 수단으로 사용함으로써, 사업 중에 발생할 수 있는 위험을 감소시키는 보험과도 같은 역할도 합니다.
4. 내 소프트웨어의 알고리즘을 특허로 보호받는 것과, 비밀로 유지하는 것(영업비밀) 중 무엇이 더 좋을까요?
소프트웨어마다 개별적으로 판단해야 합니다. 우선, 특허와 영업 비밀의 특징을 이해하시고, 나의 소프트웨어는 어떤 방식으로 보호해야 하는 것이 좋을 지 개별적으로 판단해야 합니다.
특허는 내용이 공개되는 것이 원칙이고, 20년의 한정된 보호기간을 갖습니다. 반면에 영업비밀은 비밀을 유지할 수 있는 한 계속하여 독점할 수 있기 때문에, 기술의 보안성이 유지될 수 있고 시장에서 해당 기술이 오래도록 사용될 것으로 예상되는 경우 이점을 갖습니다.
한편, 소프트웨어 분야는 일단 서비스가 실시되면 개발자들이 실시 형태만을 보고 비슷한 서비스를 개발할 수 있는 경우가 많고, 다수의 개발자가 하나의 프로젝트에 참여하고 개발자들의 이직이 잦은 특성 상 보안이 유지되기 어렵다는 점과 IT 기술의 교체 주기가 빠르다는 점을 고려하면, 영업비밀 보다는 특허로 보호 받는 것이 적절한 소프트웨어가 좀 더 많을 것으로 생각합니다.
5. 요즘 많은 IT 업체들이 오픈소스로 기술을 공개합니다. 오픈소스로 공개하면 특허를 받지 못하나요?
오픈소스로 공개하더라도 특허를 받을 수 있습니다. 원칙적으로 공개된 기술은 특허될 수 없으나, 자신이 발명한 기술이라면 그 공개일로부터 1년 이내에 특허를 출원할 수 있기 때문입니다.
저는 그 보다 오픈소스 전략과 특허가 어떻게 함께 활용될 수 있는지 소개드리려 합니다.
요즘 IT 기업이나 많은 개발자들이 소스코드를 오픈소스로 공개시키는 추세입니다. 최근, 저는 보이저엑스의 남세동 대표님의 강의에서 오픈소스로 공개하면 어떠한 이점이 있는지에 대해서 질문을 한 적이 있습니다.
이에 대하여, 구글과 같은 기업은 다음과 같은 목적으로 소스를 공개한다고 합니다.
(1) 자신의 기술 홍보
(2) 오픈소스 기술을 사용할 수 있는 개발자의 자연적인 양성과, 추후 이에 따른 양질의 인력 영입
(3) 오픈소스 기술을 사용하는 생태계 활성화에 따른 사업 영역 확보
(4) 그러나, 기술의 진짜 알맹이는 공개하지 않거나, 특허로 미리 보호받은 후 공개한다.
여기서, (4)번째 답변에 대해 생각해 볼 점이 있습니다.
실제로, 구글의 경우 인공지능 바둑 프로그램인 알파고와 같이 우리가 많이 들어본 딥러닝이나, 아타리 학습에 대한 강화학습 기술 등의 연구 과정을 지금도 계속하여 공개하고 있었습니다. 이와 동시에 구글은 공개 전부터 이러한 기술에 대해서 미리 특허권을 확보해두고 있습니다.
아타리 강화 학습 특허: https://patents.google.com/patent/US9679258B2/en
특허 출원일: 2013-12-05아타리 강화 학습 오픈소스: https://deepmind.com/research/publications/playing-atari-deep-reinforcement-learning/
오픈소스 공개일: 2013-12-19
오픈소스는 누구나 기술을 사용하게 하려는 것이고, 특허는 기술을 독점하기 위한 것입니다. 얼핏보면 배치되는 전략를 구글은 왜 함께 사용하고 있는 것일까요?
소스를 공개시켜 나의 기술을 사용하는 사용자의 수를 늘리면서, 또 자신의 기술을 공부한 양질의 인력들이 나중에 경쟁기업이 된다면, 특허권을 행사하여 결국에 구글이 인수해버리겠다는 의도가 아닐까요
즉, 오픈소스를 통해 나의 기술을 사용하는 유저 수를 늘리면서도, 이들이 경쟁자가 되면 권리를 행사하겠다는 전략이라고 생각합니다. 오픈 소스의 전략을 취하는 기업이시라면 이러한 전략을 취하시는 것도 좋을 것이라 생각됩니다.
다음글에서는, 내 아이디어에 기반한 소프트웨어를 다른 업체에 제작 의뢰시에 소스코드의 소유권과 지적재산권의 소유권을 알아보고, 또한 소프트웨어를 저작권 및 컴퓨터프로그램 보호법으로 보호받는 방법과 특허법으로 보호받는 방법의 차이를 보려고 합니다.
와 잼나게 읽었네요 |
감사합니다! 자주 소통해요 ㅎㅎ
양측이 서로 묻지 않기로 한 것이 DDR과 펌프이고, 양측이 불나게 싸운 것이 삼성과 애플인가요? 어느 세계든 흥미롭지만, 돈에 관련된 세계는 흥미로 끝나지 않고 지엽적이고 사변적일지라도 읽어두게 됩니다.
DDR과 펌프도 소송이 있었지만 서로 한국과 미국에서 각각 유리한 특허가 있었기 때문에, 싸우게 되면 서로 각국에서 장사가 어렵게 될 게 어느 정도 일찍 예상돼서 좀 더 일찍 합의가 있었던 것 같습니다.
삼성은 2011년 스마트폰 시장이 성장할 때 애플한테 지면 노답인 상황이라, 그때까지 가지고 있는 모든 특허들 일일이 다 분석해서 맞소송으로 필사적으로 싸우다가, 서로 지치고 삼성의 배상액도 어느 정도 각이 나와서 서로 합의한 것으로 보입니다.
이런 소송에서 어느 한쪽이 방어할 만한 특허나 디자인을 미리 보유해두지 않았다면 소송에서 탈탈 털리고, 합의를 봐도 엄청 불리하게 합의를 보게 된다는 말이 하고 싶었습니다...ㅎㅎ