RISS 학술연구정보서비스

검색

인기 검색어

    다국어 입력

    http://chineseinput.net/에서 pinyin(병음)방식으로 중국어를 변환할 수 있습니다.

    변환된 중국어를 복사하여 사용하시면 됩니다.

    예시)
    • 中文 을 입력하시려면 zhongwen을 입력하시고 space를누르시면됩니다.
    • 北京 을 입력하시려면 beijing을 입력하시고 space를 누르시면 됩니다.
    닫기

    검색결과 좁혀 보기

    선택해제

    오늘 본 자료

    • 오늘 본 자료가 없습니다.
    더보기
    • API 서열 분석을 통한 .NET 난독화 도구 자동 식별

      허태광 부산대학교 2021 국내석사

      RANK : 247599

      IT 기술의 발전으로 소프트웨어가 늘고 있고 이를 보호하기 위해 난독화 기술을 사용하고 있지만, 난독화 기술이 악성 코드를 숨기는 데 사용되고 있다. 이와 함께 최근 .NET 사용량이 증가하고 난독화 기술을 적용한 악성 코드도 증가하고 있다. 이러한 .NET 난독화 기술이 적용된 프로그램은 de4dot을 통해 분석할 수 있지만 de4dot은 난독화 도구를 제대로 탐지하지 못하고 난독화 회피 기법에 취약한 문제가 있다. 이를 해결하기 위해 프로그램 특징인 API를 사용하여 서열 분석을 통해 프로그램의 유사도를 바탕으로 난독화 도구 자동 분류를 수행하였다. 제안 시스템의 성능을 확인하기 위해 5개의 프로그램에 7개의 난독화 도구를 적용하여 실험하였다. 실험 결과 de4dot에서는 42.8% 정확성을 보이고 제안 시스템에서는 de4dot보다 높은 78.5%의 정확성을 보였다. 또한, 난독화 회피 기법이 적용된 5개 프로그램을 모두 분류하였다.

    • VizMe : 소스코드를 분석하기 위한 알고리즘 자동 시각화 시스템

      천준석 부산대학교 2013 국내석사

      RANK : 247599

      Complex software development is the cause of the increasing man-month cost. And maintenance of complex software is need to large man-month cost. Modi-cation of the source code is one way of software maintenance. If the programmer modify the code written by another programmer, understanding of the source code is required. In general, owchart representation is an easy way to understand the source code. On the other hand, developers using a the automatic owchart generator to draw a owchart quickly and easily. However, the output of the automatic owchart generator is dicult to understand the source code. This paper proposes VizMe, an automatic visualizer of source codes for the understanding of the algorithm. VizMe is an automatic generator of owchart, PAD and pseudo-code. VizMe supports to source code written in C, Java and Scheme Language. The Programmer want to put information in the owchart, it is need to add the meta tags in the source code. In this paper, comparison of owchart and PAD using density, cyclomatic complexity and graph entropy. The measurements of density (owchart: 0.027, PAD: 0.024) and cyclomatic complexity (owchart: 8.6, PAD: 1) shows that PAD is easier to understand than the owchart. The comparison of graph entropy shows that PAD (0.469) is higher than that of the owchart (0.356). Because PAD is higher degree than owchart when represent a branch statement. Using VizMe in all phases of software development, that is thought to contribute to improving software quality and reducing man-month.

    • JNI 이용 안드로이드 애플리케이션의 개인정보 유출 탐지

      김진섭 부산대학교 대학원 2020 국내석사

      RANK : 247599

      The use of smartphones is increasing and the leakage of user personal information is frequently occurring. Taint analysis tools to prevent such leakage of personal information include Flowdroid, Amandroid, and Scandroid, but they analyze Java byte code only, not the native libraries. Even a few methods including Gangjin's research and Argus-SAF, which can analyze the native libraries, may not report correct results depending on the NDK versions. To solve this problem, we converted the native libraries into the LLVM intermediate representations according to the NDK version, and the resulting intermediate representations are analyzed using the taint analysis method. In order to measure the performance improvement of the proposed analyzer, it has experimented with 15 malicious applications and 15 normal applications. Experimental results show that the proposed method is superior to other methods, specifically, it recorded the highest F1-score 60.6% than others, FlowDroid 22.2% and Argus-SAF 41.4%. 스마트폰의 사용이 늘고 있고 그에 따른 사용자 개인정보 유출이 빈번하게 일어나고 있다. 이러한 개인정보 유출을 막기 위한 오염 분석 도구로 FlowDroid, AmanDroid, ScanDroid가 있지만 Java 바이트 코드만을 분석하기 때문에 네이티브 라이브러리를 분석하지 못한다. 네이티브 라이브러리를 분석할 수 있는 방법으로 강진의 연구, Arugs-SAF 등이 제안되었지만 NDK 버전에 따라 올바른 결과를 내지 못하는 문제점이 있었다. 이를 해결하기 위해 NDK 버전에 따라 생성되는 네이티브 라이브러리를 LLVM 중간표현으로 변환한 후 LLVM 중간표현에 대한 오염 분석을 수행하였다. 제안한 분석기의 성능 향상을 측정하기 위해 15개의 악성 애플리케이션과 15개의 정상 애플리케이션에 대해 실험하였다. 실험 결과 제안한 방법이 FlowDroid 22.2%, Argus-SAF 41.4%에 비해 가장 높은 F1-점수 60.6%를 기록하였다.

    • 비속어 분포를 고려한 뉴스 댓글 필터링 방법

      하예람 부산대학교 대학원 2020 국내석사

      RANK : 247599

      이 연구에서는 인터넷 뉴스에 작성되는 댓글에 나타나는 특징을 분석함으로써 비속어를 필터링하는 새로운 방법을 제시하고 있다. 이 실험을 위해 2019년 7월 9일부터 50일 동안 네이버 포털사이트의 뉴스 댓글을 수집하였고 연구를 위해 만든 비속어 리스트를 기반으로 한국어 형태소 분석기인 꼬꼬마(Kkma)를 통해 댓글의 형태소를 분석하였다. 이 연구는 세 단계의 필터링을 통해 심각성이 높은 악성 댓글을 필터링하고자 하였다. 첫 번째 단계에서는 예사어 댓글보다 비속어 댓글의 평균 길이가 더 길다는 특징을 통해 평균 길이 이상의 댓글을 추출하였다. 두 번째 단계에서는 첫 번째 단계에서 추출한 댓글을 대상으로 존대어와 비속어의 형태소 개수가 반영된 댓글 건전도 수식을 통해 0 미만의 댓글 건전도를 가진 비속어 댓글을 추출하였다. 마지막 단계에서는 두 번째 단계에서 추출한 댓글을 대상으로 k-평균 분석을 통해 세 개의 군집으로 분류하였고 비속어 군집에 포함되어있는 비속어 댓글을 필터링하였다.

    • 시각 프로그래밍 기반 블록 공유 시스템 개발

      박지훈 부산대학교 대학원 2020 국내석사

      RANK : 247599

      코딩 조기 교육의 필요성이 대두됨에 따라 교육용 프로그래밍 도구가 개발되었으며, 이들 중 블록 코딩을 지원하는 Blockly, 스크래치, 엔트리 등의 도구가 개발되었다. 그러나 현재 블록 코딩 도구는 라이브러리를 지원하지 않아 교육 효율이 많이 떨어지는 실정이다. 또한 블록을 Python이나 JavaScript와 같은 텍스트 기반 언어로 변환은 가능하지만, 텍스트 기반 언어로 블록을 생성할 수 없다. 본 논문에서는 블록 코딩에 라이브러리 개념을 도입한 블록공유시스템을 개발한 방법을 소개한다. 즉, 블록 라이브러리를 통해 블록 재사용성을 높이고 블록을 쉽게 공유할 수 있도록 하였다. 또한 블록과 텍스트 기반 언어 간의 변환 기능을 추가하여 텍스트 기반 언어로 효과적인 학습전이가 이루어지도록 하였다. 이를 위해 라이브러리를 저장 및 호출할 수 있는 사용자 정의 블록과 사용자 인터페이스를 구현하였다. 또한 새로운 블록 저장 구조를 정의하였고 라이브러리 관리 서버를 통해 이를 공유할 수 있도록 하였다. 그리고 라이브러리 공유 과정과 텍스트 기반 언어를 블록으로 변환하는 과정을 설명하고 실험을 통해 이를 검증하였다. 또한 설문 조사를 통해 개발한 시스템이 코딩 교육에 효율적임을 평가하였고 엔트리나 스크래치에서 블록을 공유하는 방식보다 92.0%의 의견으로 효율성이 좋다고 평가되었다. Blockly is a block coding tool that, unlike text-based languages, allows coding in a graphical environment through blocks and using primarily for coding early education. However, the current system does not support block libraries, so the education efficiency is very low. It is also possible to convert blocks to text-based languages like Python or JavaScript, but it cannot create blocks from text-based languages. This paper describes Block Sharing System that adopts the library concept to block coding. Block libraries increase block reusability and make blocks easy to share. It also adds the ability to convert between blocks and text-based languages, providing an effective learning transition to text-based languages. For this purpose, it is implemented user interface and custom blocks that can store and call libraries. It is also defined a new block storage structure that can be shared through the library management server. The process of sharing the library and the process of converting a text-based language into blocks is explained and verified through experiments. In addition, according to the survey for evaluating the developed system, 92.0% of interviewees responded that the suggested method is more convenient than sharing blocks in entry or Scratch.

    • 아두이노 프로젝트 교육을 위한 블록 언어 라이브러리 번역기

      조성호 부산대학교 대학원 2020 국내석사

      RANK : 247599

      2018년부터 진행된 소프트웨어 교육의 의무화와 더불어 피지컬 컴퓨팅을 활용한 프로젝트 교육이 확산하고 있다. 2015 개정 교과서 중 6종의 교과서에서 아두이노를 사용하고 있지만, 학교 현장에 적용하기 어렵다는 시각이 많다. 이는 크게 두 가지 이유 때문이다. 첫 번째 이유는 아두이노가 학생들이 프로그래밍, 전기 회로, 임베디드 지식을 짧은 수업 시간 동안 이해해야 되기 때문이다. 두 번째 이유는 현재 아두이노 교육 방안들이 프로젝트 기반 학습에는 부적합하기 때문이다. 본 논문에서는 이러한 아두이노 교육의 문제점을 해결하기 위한 번역기를 개발하였다. 제안 번역기는 C++ 언어 아두이노 라이브러리를 블록 언어 라이브러리로 변환하는 번역기이다. 제안 번역기를 사용하면 아두이노 API 스타일을 따르는 모든 라이브러리를 블록 언어로 사용할 수 있다. 번역기의 교육적 효능을 측정하기 위해 실제 수업에 적용하여 설문으로 실험을 진행하였다. 그 결과 제안 번역기를 적용한 집단의 실습 과제 최종 완성도가 기존 C++ 언어만을 교육받은 집단보다 33% 향상되었고, 블록 언어만 교육받은 집단보다 20% 향상되었다. 또한, 학습 동기를 조사한 결과 C++ 언어를 교육받은 집단보다 45% 향상되었고 블록 언어를 교육받은 집단보다 17% 향상되었다. 즉, 제안 번역기를 사용하면 C++ 언어나 블록 언어만을 이용한 교육보다 현장 적용에 효과적임을 알 수 있다.

    • 임베디드 시스템을 위한 C 언어 객체지향 툴킷 설계 및 구현

      강민우 부산대학교 대학원 2020 국내석사

      RANK : 247599

      C 언어는 널리 사용되는 기계 친화적이고 빠른 프로그래밍 언어이다. 또한 제4차 산업혁명을 맞아 IoT, 임베디드 시스템 등이 중요한 역할을 차지하면서 큰 영향력을 발휘할 것으로 기대된다. 이러한 C 언어의 기본 패러다임은 절차적 프로그래밍이라고 할 수 있다. 하지만 절차적 프로그래밍 방식을 따르면 프로그램의 요구사항이 복잡해질 경우 프로그래밍과 유지보수가 몹시 어려워질 수 있다. 이에 대한 좋은 해결책으로 생각할 수 있는 것이 객체지향 프로그래밍(OOP: object-oriented programming)이다. 객체지향 프로그래밍은 현대의 주류 프로그래밍 패러다임 중 하나로, 객체를 중심으로 프로그래밍하는 방법이다. 이 방법은 현실 세계의 다양한 개념에 적용하기 용이하다. 또한, 모듈화와 유연성, 재사용성 등에 강점이 있어, 프로그래밍과 유지보수에 유리한 점이 있다. 하지만 C 언어로는 객체지향 프로그래밍을 하기 어렵다. 이에, 본 논문에서는 EMOOC(EMbedded Objected Oriented C)를 제안한다. EMOOC는 C 언어에서 객체지향 프로그래밍의 특성을 살릴 수 있도록 돕는다. 특히 임베디드 환경에서도 적용이 용이하도록 가볍고 호환성 있게 구현하였다. 본 논문에서는 EMOOC 및 EMOOC를 통해 객체 지향적으로 프로그래밍하는 방법을 소개하였다. 또한, 예제로서 스택, 우선순위 큐, 패턴을 응용한 두 개의 시뮬레이션을 구현하고, 일반적인 C, 다른 객체지향 툴킷인 ooc, C++와 비교 및 대조하였다. 그 결과 EMOOC는 비가상 함수를 사용할 때는 ooc 및 C++와 성능 차이가 크지 않았으며, 가상함수를 사용할 때는 ooc와 C++에 비해 빨랐다. 길이 또한 ooc로 구현한 코드에 비해 짧았다. 종합적으로 판단했을 때, C 언어에서 객체지향 프로그래밍을 할 때 EMOOC가 합리적인 선택이 될 수 있음을 알 수 있었다. 또, EMOOC는 성능이 나쁘지 않고 호환성 있으며 가벼우므로 임베디드 환경에도 적용해볼 수 있다.

    • Severity Level Analysis in Cross-Platform and Native Mobile Development: Insights from Dart, Java, and Kotlin

      이브로키모브 사도르벡 부산대학교 대학원 2024 국내석사

      RANK : 247599

      Though many approaches to developing mobile applications have been suggested up to now, developers have difficulties selecting the right one. This study compares native and cross-platform application development approaches, particularly focusing on the shift in preference from Java to Kotlin and the increasing use of Flutter. This research offers practical insights into factors influencing developers’ choice of programming languages and frameworks in mobile application development by creating identical applications us- ing Java, Kotlin, and Dart (Flutter). Furthermore, this study explores the best practices for development by examining the quality of code in 45 open-source GitHub reposito- ries. The study evaluates LOC and code smells using semi-automated SonarQube assess- ments, including the measurement of severity levels, to determine the effects of selecting a specific language or framework on code smells and development efficiency. Preliminary findings show differences in the quality of the code produced by the two approaches, offering developers useful information on reducing code smells and improving project quality. 모바일 앱 개발 방법에 대해 많은 접근법이 제안되었지만, 개발자들은 적합한 방법 선택에 어려움을 겪고 있다. 이 연구는 네이티브 및 크로스 플랫폼 어플리케이션 개발 접근 방식을 비교하며, 특히 Java에서 Kotlin으로의 선호도 변화와 Flutter의 사용 증가에 중점을 두고 비교한다. 이 연구는 Java, Kotlin, Dart(Flutter)를 사용하여 같은 어플리케이션을 작성 함으로써, 모바일 어플리케이션 개발에서 프로그래밍 언어 및 프레임워크 선택에 영향을 미치는 요인에 관한 실질적인 통찰을 제공한다. 또한, 이 연구는 45개의 GitHub 공개 소 스 프로그램의 코드 품질도 검사함으로써 모범 개발 사례를 모색한다. 구체적으로, 반자동 SonarQube 평가를 사용하여 LOC 및 코드 스멜을 평가하고, 이를 통해 특정 언어나 프 레임워크 선택에 따라 코드의 유지보수 및 개발 효율성에 미치는 영향을 탐구한다. 실험 결과, 작성된 코드 품질의 차이를 알 수 있었다. 본 연구는 코드 스멜을 줄이고 프로젝트 유지보수를 개선하는 데 적합한 프로그래밍 언어와 프레임워크를 선택하는 데 도움이 될 것으로 기대된다.

    • 임베디드 시스템의 명세 데이터를 이용한 테스트 코드 자동 생성 시스템

      이필수 부산대학교 대학원 2014 국내석사

      RANK : 247599

      There are many stages of developing embedded software including requirement analysis, design, coding, and testing. Among them, the software testing is important to make a software production without bugs. As the software testing often falls within the program coding stage, a programmer is in charge of testing software as well as making source codes. In this situation, making test codes for a program increases the burden on programmers. Also the test method can be different across programmers, so the result of the testing may not be trusted. This paper proposes the automatic generating system for the test code based on the requirement data. The proposed system generates test codes and test stubs according to test scenarios automatically. To show the performance of the implemented system, the code coverage of the test codes which have been written by programmers and that of the test codes generated automatically have been compared. According to the experiment result, the code coverage of two test codes is the same. This result shows that the system is helpful for a programmer to save considerable time and effort for the testing of embedded software, for the amount of test code is more than 40% of typical embedded software.

    • 데이터 구조를 고려한 소스코드 표절 검사 기법

      이기화 부산대학교 대학원 2014 국내석사

      RANK : 247599

      Even the source code consists of data structures and algorithms, previous studies for plagiarism detection techniques on source codes do not consider the data structures. The data structure, however, has a resilience on plagiarism attacks, which implies that it tends not to change easily to the plagiarism attacks. In this paper, a plagiarism detection technique for source codes considering data structures is proposed. To show the usefulness of this technique, an experiment has been performed on 126 source codes submitted as homework results in an object-oriented programming course. When both the data structures and the algorithms of the source codes are considered, the precision and the F-measure score are improved 22.6% and 19.3%, respectively, than those of the case where only the algorithms are considered. This result shows that the method considering the data structures of the source code is effective to detect the plagiarized source code especially for improving the precision of the detection by reducing the number of false alarms.

    연관 검색어 추천

    이 검색어로 많이 본 자료

    활용도 높은 자료

    해외이동버튼