• 제목/요약/키워드: 소프트웨어 소스 코드

검색결과 317건 처리시간 0.044초

소프트웨어 소스 코드의 저작권 관리를 위한 디지털 라이센스의 검색 (Digital License Searching for Copyright Management of Software Source Code)

  • 차병래
    • 한국콘텐츠학회논문지
    • /
    • 제7권1호
    • /
    • pp.21-31
    • /
    • 2007
  • 지적재산권 제도는 21세기 정보화 사회의 발전에 있어서도 중요한 역할을 하고 있다. 국가 경쟁력 제고를 위해서도 디지털콘텐츠에서 확대하여 소프트웨어 소스 코드에 대한 지적재산권 제도와 기술의 정비는 매우 중요한 의미를 지닌다. 소프트웨어 소스코드의 소유권 분쟁이 발생 시 소유권을 증명하기 위해서는 원본의 소프트웨어 소스코드를 판별해야만 하는 문제점을 갖고 있다. 본 연구에서는 소프트웨어 소스코드의 원본 판별을 지원하기 위한 소프트웨어 소스코드의 디지털 라이센스는 소스코드의 예약어를 파싱하여 계층구조를 갖는 XML 파일로 표현하며, 복잡한 소스코드 대신에 소프트웨어 소스코드의 아키텍처를 트리구조 형태로 표현할 수 있다. 그리고 디지털 라이센스를 검색하기 위한 색인 및 검색에 대한 연구를 수행한다.

소프트웨어 소스 코드의 저작권 관리를 위한 디지털 라이센스의 비교와 분류 그리고 크립텍스 모델 (Discrimination and Comparison of Digital License for Copyright Management of Software Source Code and CRYPTEX Model)

  • 차병래;정영기
    • 한국콘텐츠학회논문지
    • /
    • 제8권1호
    • /
    • pp.246-258
    • /
    • 2008
  • 소프트웨어 산업은 21세기 정보화 사회의 발전에 있어서도 중요한 역할을 하고 있다. 소프트웨어 소스 코드의 소유권 분쟁이 발생 시 소유권을 증명하기 위해서는 원본의 소프트웨어 소스코드를 판별해야만 하는 문제점을 갖고 있다. 본 논문에서는 소프트웨어 소스코드의 원본 판별을 지원하기 위한 소프트웨어 소스코드의 디지털 라이센스는 소스코드의 예약어를 파싱하여 계층구조를 갖는 XML 파일로 표현하며, 복잡한 소스코드 대신에 소프트웨어 소스코드의 노드 패턴과 아키텍처 패턴인 트리 구조 형태로 표현할 수 있다. 그리고 디지털 라이센스에 의한 소스코드의 분류 가능성에 대한 시뮬레이션과 크립텍스 모델을 제안한다.

소스코드 기반 소프트웨어 취약점 평가 자동화 방안 연구 (A Study of Source Code-based Automated Software Vulnerability Assessment)

  • 송준호;박재표;권현수;전문석
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2015년도 추계학술발표대회
    • /
    • pp.794-796
    • /
    • 2015
  • 본 연구는 소프트웨어의 소스코드를 대상으로 보안 취약성을 자동으로 평가할 수 있는 방안을 연구하여 소프트웨어 취약점 관리의 자동화 기술 아키텍처를 제안한다. IT가 생활환경의 기반기술로 보급화 되며 소프트웨어시장이 가파르게 성장하고 있다. 영리 소프트웨어의 경우 개발기관에서 관리 및 지원을 하지만, 오픈소스 소프트웨어는 비영리 목적과 개발환경으로 인해 체계적으로 관리되기가 어려워 취약점이 발생하기 쉽다. 그럼에도 비용과 효율의 문제로 오픈소스가 광범위하게 활용되고 있어, 오픈 소스 소프트웨어를 도입한 기관 및 단체에 침해를 유발하고, 보안수준을 악화시키고 있다. 이에 오픈 소스 소프트웨어는 소스코드가 공개되는 소프트웨어라는 점을 활용하여 소스코드 수준에서의 취약점 관리 자동화를 지원함으로써, 오픈소스 소프트웨어를 활용하는 분야의 보안 환경을 안전하게 향상시킬 수 있다.

퍼징 기반의 상용 및 공개 소프트웨어에 대한 보안약점 진단 방법 연구

  • 임기영;강성훈;김승주
    • 정보보호학회지
    • /
    • 제26권1호
    • /
    • pp.27-33
    • /
    • 2016
  • 보안 약점은 소스코드의 공개 여부와는 관계없이 존재하며, 소프트웨어의 취약점으로 이어질 수 있다. 소스코드가 공개된 소프트웨어의 경우 소스 코드 분석을 통해 보안 약점을 제거하지만, 소스코드가 공개되지 않고 바이너리 형태의 실행파일만 제공되는 소프트웨어의 경우에는 보안 약점을 찾기가 어렵다. 비정상 데이터를 임의로 생성하여 파일 또는 표준입력 형태로 입력하는 퍼징 기법은 위와 같은 소스코드가 공개되지 않은 소프트웨어의 취약점을 찾기 위한 기술이다. 본 논문에서는 소스코드가 없는 상용 및 공개 소프트웨어의 보안 약점을 진단하기 위해 퍼징 기법을 활용하는 방법을 제시하고, 공개된 퍼징 도구 및 프레임워크를 이용하여 설치부터 소프트웨어의 진단 및 발견된 보안 약점을 분석, 제거 등의 퍼징 프로세스를 소개하여 상용 및 공개 소프트웨어 취약점 발견에 도움을 줄 것으로 기대한다.

소스코드의 그래프 변환 및 그래프 데이터베이스에서의 활용에 대한 연구 (A Study on Graph Conversion of Source Code and Its Use in Graph Databases)

  • 장석준;김수현;이임영
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2023년도 추계학술발표대회
    • /
    • pp.314-316
    • /
    • 2023
  • 최근 수많은 오픈소스로 공개되면서, 대부분의 소프트웨어가 오픈소스를 활용하여 구현되고 있다. 하지만, 오픈소스에 적용되어 있는 라이선스 간의 충돌 문제가 발생하면서, 라이선스 위반 문제가 지속적으로 발생하고 있다. 이러한 문제를 사전에 방지하기 위해 소스코드 분석이 필수적이지만, 다양한 기능이 실행되는 소스코드 특성 상 소스코드만 봤을 경우 직관적으로 분석이 어렵다는 문제점이 있다. 최근 소스코드의 효과적인 분석을 도와주는 다양한 도구들이 개발되었고, 그 중 한 가지 방법은 소스코드를 그래프로 변환하여 시각적인 편의성을 제공하는 방법이다. 그래프로 변환된 소스코드는 해당 시점에는 분석이 가능하지만, 분석이 필요할 때마다 변환을 해야 하는 문제점이 존재한다. 따라서 소스코드를 변환한 그래프 데이터를 저장하는 방법이 요구되었는데, 그래프 데이터베이스의 경우 특정 파일 형식만 지원하기 때문에 그래프 데이터 저장에 어려움이 존재한다. 본 제안방식에서는 소스코드를 변환한 그래프 데이터를 그래프 데이터베이스에 효과적으로 저장하고, 분석이 요구될 때마다 데이터베이스 상에서 즉각적으로 분석이 가능한 방법을 제안한다.

code2vec을 이용한 유사도 감정 도구의 성능 개선 (Enhancing the performance of code-clone detection tools using code2vec)

  • 엄태호;홍성문;양준혁;장효석;도경구
    • 한국소프트웨어감정평가학회 논문지
    • /
    • 제17권1호
    • /
    • pp.31-40
    • /
    • 2021
  • 소스코드 표절은 원본 자료의 출처를 분명히 밝히지 않고 자신의 것처럼 사용하는 행위를 말한다. 소스코드 표절로 인한 문제는 법적인 분쟁을 다투는 경우까지 다양한 문제를 일으킨다. 소스코드의 표절 여부는 일반적으로 비교 대상 소프트웨어 프로젝트 내의 각 소스코드를 전수 비교하여 유사도를 측정하여 결정한다. 전수 비교는 표절 가능성이 전혀 없는 코드도 비교 대상에 포함하기 때문에 그만큼의 시간을 헛되이 소모한다. 소스코드 표절로 의심되는 비교 쌍만 선별하여 비교할 수 있으면 그만큼 비교 횟수는 줄어들게 되어 탐지 도구의 실행 속도를 향상시킬 수 있을 뿐만 아니라, 표절 가능성이 높은 부분만을 대상으로 탐지의 정확도를 높이는데 집중할 수도 있다. 본 논문에서는 code2vec 이라는 기계학습 모델을 활용하여 코드 클론으로 의심되는 소스코드들을 미리 분류하여 비교 횟수를 줄임으로써 소스코드 표절 탐지의 성능을 개선할 수 있음을 보인다.

임베디드 소프트웨어의 소스 코드 품질 향상을 위한 Practice Patterns의 적용 (Applying Practice Patterns to Improve Source Code Quality of Embedded Software)

  • 홍장의
    • 정보처리학회논문지A
    • /
    • 제12A권7호
    • /
    • pp.589-596
    • /
    • 2005
  • 임베디드 소프트웨어는 하드웨어 플랫폼에 탑재하기 전, 소스 코드에 대한 품질을 검증하는 작업이 매우 중요하다. 임베디드 소프트웨어의 코드 품질을 향상시키기 위해서는 분석 및 설계 단계의 모델에 대한 품질과 생성된 코드에 대한 품질이 관리되어야 한다. 본 연구에서는 임베디드 소프트웨어의 소스 코드 품질을 향상시키기 위한 방법으로 Practice Pattern을 제안한다. 이는 모델링 과정이나 코딩 과정에서 개발자를 가이드 하는 절차 패턴으로써, 모델의 품질과 소스 코드 품질을 향상시키는 방법으로 사용될 수 있다. 제시하는 패턴의 적용은 기능의 정확성뿐만 아니라 성능, 모듈화, 재사용성 및 이식성 등과 같은 품질 요소들을 향상시킬 수 있을 것으로 보인다.

공통 토큰에 기반한 서로 다른 언어의 유사성 검사 (Cross-Language Clone Detection based on Common Token)

  • 홍성문;김현하;이제형;박성우;모지환;도경구
    • 한국소프트웨어감정평가학회 논문지
    • /
    • 제14권2호
    • /
    • pp.35-44
    • /
    • 2018
  • 서로 다른 언어로 작성된 소스코드의 유사성 검사는 주로 요약구문트리를 기반으로 비교를 수행한다. 하지만 대규모의 소스코드를 실용적인 수준으로 비교하려면 토큰수준 기반에서 작동하는 유사성 검사 기술이 필요하다. 본 연구에서는 서로 다른 언어에서 생성되었지만 같은 의미를 지닌 토큰을 표현할 수 있는 공통 토큰을 정의하고, 소스코드에서 언어별 처리 과정을 거쳐 생성한 공통 토큰의 나열을 입력으로 소스코드의 유사성 검사를 수행하는 방법을 제안한다. 한국저작권위원회의 표절검사 도구 exEyes를 사용해서 서로 다른 언어로 작성된 동일한 코드를 대상으로 실험한 결과, 제안한 방법을 사용했을 때, 유사성 평가 성능이 향상됨을 보였다.

소프트웨어 소스 코드의 저작권 관리를 위한 디지털 라이센스 프로토타입 (Digital License Prototype for Copyright Management of Software Source Code)

  • 차병래;정종근;오수열
    • 인터넷정보학회논문지
    • /
    • 제7권5호
    • /
    • pp.95-108
    • /
    • 2006
  • 국가 경쟁력 제고를 위해서도 디지털콘텐츠에서 확대하여 소프트웨어 소스 코드에 대한 지적재산권 제도와 기술의 정비는 매우 중요한 의미를 지닌다. 이러한 지적재산권 중에서 특히 소프트웨어 보호에 대한 인지는 매우 낮은 편이다. 소프트웨어 소스코드의 소유권 분쟁이 발생 시 소유권을 증명하기 위해서는 원본의 소프트웨어 소스코드를 판별해야만 하는 문제점을 갖고 있다. 또한 소프트웨어가 복제되어도 복잡성과 독해 능력 부족으로 정확한 판정을 내리기가 쉽지 않다. 본 논문에서는 이러한 소프트웨어 복제에 대한 판별을 하나의 개별 코드 단위로 시행하지 않고, 전체 소스가 가지는 구조적 일치성을 기반으로 복제를 판별할 수 있는 XMI 타입의 디지털 라이센스 프로토타입을 개발하였다. 소프트웨어는 구조적으로 Context Free Grammar 기반이며, 그러므로 BNF표기 형태로 표현할 수 있고, 이는 다시 계층 구조로 표현할 수 있기 때문에 가능한 것이다. 그러므로 소프트웨어 소스코드의 구조적 일치성을 비교하기 위한 계층구조를 갖는 소스코드의 아키텍처를 표현할 수 있다.

  • PDF

소프트웨어 소스코드의 저작권 표현과 접근제한을 위한 비즈니스 모델 (Business Models for Access Control and Copyrights Expression of Software Source Code)

  • 차병래;김경준;이동섭;김철원
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2008년도 춘계학술발표대회
    • /
    • pp.1163-1166
    • /
    • 2008
  • 소프트웨어 소스코드는 크게 오픈 소스와 상업용 비공개 소스로 구분될 수 있다. 소스코드는 자동차 조립라인과 같이 소프트웨어를 무제한 생산이 가능한 지식집약적인 부가가치 산업이다. 본 논문에서는 오픈-소스 코드에는 디지털라이센스를 이용한 저작권을 표현하고, 비공개-소스 코드는 보안 컨테이너 역할을 수행하는 크립텍스 모델을 제안한다.