Unit 3
Unit 3
Cloud Computing means storing and accessing the data and programs on remote
servers that are hosted on the internet instead of the computer’s hard drive or local
server. Cloud computing is also referred to as Internet-based computing, it is a
technology where the resource is provided as a service through the Internet to the
user. The data that is stored can be files, images, documents, or any other storable
document.
The following are some of the Operations that can be performed with Cloud Computing
Storage, backup, and recovery of data
Delivery of software on demand
Development of new applications and services
Streaming videos and audio
Pay Model Pay what you Have a variety of pricing It can include a mix of
used models public cloud pay-as-you-
Factors Public Cloud Private Cloud Hybrid Cloud
The general
Restricted to a specific Can be a combination of
Availability public (over the
organization both.
internet)
Cloud computing offers a range of services that provide scalable and flexible computing
resources over the internet. Here's an overview of the primary services, their benefits,
limitations, and the features of different service models:
Cost Efficiency: Reduces the need for significant upfront hardware investments;
users pay for resources on a subscription or pay-per-use basis.
Scalability: Resources can be quickly scaled up or down based on demand, ensuring
optimal performance during varying workloads.
Accessibility: Enables access to applications and data from any location with an
internet connection, facilitating remote work and collaboration.
Maintenance: Cloud providers handle system updates, security patches, and
maintenance tasks, reducing the workload on internal IT teams.
Limitations of Cloud Computing:
Security and Privacy: Storing data off-premises can raise concerns about
unauthorized access and data breaches.
Downtime: Dependence on internet connectivity means that outages can disrupt
access to services.
Limited Control: Users have less control over the infrastructure and specific
configurations compared to on-premises setups.
Compliance: Ensuring that cloud services meet industry-specific regulatory
requirements can be challenging.
Cloud computing has revolutionized the way organizations and individuals access and
manage computing resources, offering flexibility, scalability, and cost savings. However, it's
essential to consider the associated limitations and choose the appropriate service model
based on specific needs.
Data security in cloud computing
Ensuring data security in cloud computing is paramount, given the increasing reliance on
cloud services for storing and processing sensitive information. Recent developments and
examples highlight both the challenges and advancements in this domain.
1. Client-Side Encryption: This approach involves encrypting data on the user's device
before uploading it to the cloud, ensuring that only authorized users can access the
information. Notable services implementing client-side encryption include:
o Tresorit: A cloud storage service emphasizing end-to-end encryption.
o MEGA: Offers secure cloud storage with user-controlled encryption keys.
o Cryptee: Provides encrypted storage and document editing.
o Cryptomator: Allows users to encrypt files before uploading them to any
cloud service.
Additionally, major providers like Apple and Google have introduced optional client-
side encryption features for services such as iCloud and Google Drive, enhancing user
data protection. citeturn0search10
Cloud providers such as Microsoft Azure, Google Cloud, and IBM Cloud have
integrated confidential computing capabilities into their services, offering enhanced
data security for users. citeturn0search11
These incidents emphasize the critical need for robust security measures in cloud
environments. citeturn0news23
Snowflake Data Breach (2024): Hackers exploited weak credentials to access customer
databases, including AT&T and Ticketmaster.
Okta Security Incident (2023-24): The identity provider suffered a breach, allowing attackers
to steal customer session tokens and credentials.
GitHub Source Code Leak (2024): Attackers modified repositories in supply chain attacks,
proving the need for robust integrity checks.
Medibank Data Tampering (2023-24): A ransomware attack led to unauthorized
modifications of medical records, highlighting integrity risks in cloud-stored data.
Google Cloud Global Outage (Feb 2024): A software bug caused downtime for major clients,
impacting enterprise services.
Azure Service Disruptions (2023-24): Frequent power outages and networking failures
affected Microsoft Teams, Outlook, and other services.
1. Confidentiality:
o Use end-to-end encryption and Zero-Trust security.
o Enable multi-factor authentication (MFA).
o Implement Confidential Computing for encrypted data processing.
2. Integrity:
o Deploy blockchain and immutable logs for data audits.
o Use AI-driven anomaly detection to monitor data modifications.
o Implement strong access controls to prevent unauthorized data tampering.
3. Availability:
o Adopt multi-cloud redundancy and disaster recovery plans.
o Use auto-scaling and DDoS mitigation tools.
o Monitor cloud services with real-time threat intelligence.
When developing or deploying secure cloud software, organizations must ensure compliance
with Confidentiality, Integrity, and Availability (CIA) principles, industry standards, and
regulatory requirements. Below are the key functional and non-functional requirements
for secure cloud software.
1. Functional Requirements
These define the specific security features a cloud software solution must have.
Multi-Factor Authentication (MFA): Users must verify identity using at least two factors
(e.g., password + OTP, biometric + security key).
Role-Based Access Control (RBAC): Restricts access based on user roles (admin, developer,
auditor, etc.).
Least Privilege Principle: Users get only the necessary permissions required for their tasks.
Single Sign-On (SSO): Integration with OAuth 2.0, OpenID Connect, or SAML for centralized
authentication.
End-to-End Encryption (E2EE): Encrypt data before sending it to the cloud; only authorized
users can decrypt it.
Client-Side Encryption: Protects data before uploading it to the cloud (e.g., Google Drive’s
client-side encryption).
Server-Side Encryption (SSE): Cloud providers encrypt stored data with keys managed by
AWS KMS, Azure Key Vault, or Google Cloud KMS.
Secure Data Transmission: Enforce TLS 1.3 for secure network communication.
API Security: Implement OAuth 2.0, API keys, and rate limiting to prevent abuse.
Zero-Trust Architecture: Authenticate every request to cloud resources.
Secure Coding Practices: Use OWASP Top 10 guidelines to avoid vulnerabilities like SQL
injection, XSS, CSRF.
Web Application Firewalls (WAF): Protect applications from web-based attacks.
Real-Time Threat Detection: AI-driven security tools (e.g., Microsoft Sentinel, Google
Chronicle, AWS GuardDuty) for detecting anomalies.
Security Information and Event Management (SIEM): Log security events for forensic
analysis and compliance reporting.
Automated Incident Response: Use SOAR (Security Orchestration, Automation, and
Response) tools to detect and contain threats automatically.
Backup & Disaster Recovery: Automated backup with geo-redundant storage to mitigate
ransomware and accidental data loss.
2. Non-Functional Requirements
GDPR (General Data Protection Regulation) – Ensures data privacy for users in the EU.
ISO/IEC 27001 – Global cloud security standard ensuring data protection policies.
SOC 2 (Service Organization Control 2) – Certifies cloud providers for security, availability,
and privacy.
HIPAA (Health Insurance Portability and Accountability Act) – Protects medical data in
healthcare cloud applications.
PCI-DSS (Payment Card Industry Data Security Standard) – Ensures secure online
transactions.
2.2. Performance & Scalability
Auto-Scaling: Applications should handle increased user demand via horizontal (load
balancing) and vertical scaling.
Latency Optimization: Ensure APIs respond within < 100ms to maintain good UX.
High Availability (HA): Ensure 99.99% uptime using multi-region deployments.
Cloud Failover Mechanism: Implement automatic failover to disaster recovery (DR) sites.
DDoS Protection: Integrate AWS Shield, Cloudflare DDoS Protection, or Google Cloud
Armor.
Endpoint Security: Use EDR/XDR solutions like CrowdStrike, Microsoft Defender, or
SentinelOne.
Zero-Trust Networking: Microsegmentation and continuous access validation.
Conclusion
A secure cloud software system must integrate strong authentication, data encryption,
real-time monitoring, and compliance with global security standards. By following a Zero-
Trust model and DevSecOps, organizations can ensure highly secure cloud applications
that protect user data, prevent cyber threats, and ensure business continuity.
Secure cloud software testing ensures that cloud applications are protected against security
threats, data breaches, and misconfigurations while maintaining compliance, reliability,
and resilience. Below is a structured approach to secure cloud software testing.
What it does: Combines SAST + DAST, monitoring security flaws in real time.
Tools: HCL AppScan, Contrast Security, Seeker IAST.
Best Practice: Integrate into cloud API security validation.
What it does: Checks for API vulnerabilities like injection attacks, improper authentication.
Tools: Postman, OWASP API Security Testing, SoapUI.
Best Practice: Enforce OAuth 2.0, API rate limiting, JWT validation.
1.7. Compliance & Regulatory Testing
What it does: Ensures compliance with GDPR, HIPAA, ISO 27001, SOC 2.
Tools: CloudSploit, AWS Artifact, Google Security Command Center.
Best Practice: Automate compliance audits for regulatory tracking.
1️⃣ Plan & Define Security Requirements → (Identify risks & compliance needs).
2️⃣ Perform Static & Dynamic Testing → (Code security, API tests).
3️⃣ Conduct Cloud Penetration Testing → (Simulated attacks on cloud assets).
4️⃣ Monitor & Analyze Security Logs → (SIEM integration for incident response).
5️⃣ Automate & Repeat Testing → (Continuous security validation).
Conclusion
Cloud Analytics
Cloud Analytics refers to the process of analyzing and processing data in the cloud using
scalable computing resources. It enables businesses to collect, store, process, and analyze
large volumes of data without relying on on-premises infrastructure.
Cloud analytics involves multiple components that work together to ingest, store, process,
and analyze data.
The process of collecting and transferring raw data from multiple sources to cloud storage or
processing units.
Sources: IoT devices, logs, transactional systems, social media, CRM, ERP.
Tools: AWS Kinesis, Google Pub/Sub, Azure Event Hubs.
Cloud-based analytics engines enable AI, predictive analytics, and real-time insights.
Tools: AWS SageMaker, Google Vertex AI, Azure Machine Learning, Databricks.
What it does: Recommends actions based on data patterns and AI-driven decision-making.
Example: Logistics companies use prescriptive analytics to optimize delivery routes in real-
time.
Amazon Web Services (AWS) AWS Glue, Amazon Redshift, AWS QuickSight
Microsoft Azure Azure Synapse Analytics, Power BI, Azure Data Explorer
🔹 Healthcare
🔹 Financial Services
Fraud detection: Banks use AI-driven cloud analytics to identify suspicious transactions.
Risk assessment: Investment firms predict market trends using cloud analytics.
Predictive maintenance: Factories analyze IoT sensor data to detect equipment failures.
Supply chain optimization: Cloud analytics improves logistics and distribution efficiency.
🔸 Data Privacy Risks: Storing sensitive data in the cloud requires strong encryption and
compliance with regulations like GDPR & HIPAA.
🔸 Data Latency Issues: Real-time analytics may experience lag due to network delays.
🔸 Cost Management: Cloud analytics services can become expensive without proper cost
control strategies.
🔸 Data Governance: Ensuring correct data ownership, classification, and access controls
is critical.
Big Data and Hadoop, Edge, and Fog Computing
Big Data and Hadoop
Big Data refers to massive volumes of structured, semi-structured, and unstructured data
generated from various sources, including social media, IoT devices, financial transactions,
and more. Traditional databases fail to handle such large-scale data due to storage and
processing limitations.
Hadoop, an open-source framework, provides a scalable and distributed approach to store and
process big data efficiently. It consists of two main components: HDFS (Hadoop
Distributed File System) for storage and MapReduce for parallel processing. Hadoop's
ecosystem includes tools like Hive, Pig, HBase, and Spark, which enhance data processing,
querying, and real-time analytics. The framework is widely used in industries such as finance,
healthcare, and e-commerce to analyze and extract valuable insights from large datasets.
With the rise of IoT and real-time applications, traditional cloud computing faces latency and
bandwidth constraints. Edge computing solves this by processing data closer to the source
(i.e., at edge devices like sensors, routers, and gateways), reducing response time and
dependency on centralized cloud servers. It is commonly used in applications like
autonomous vehicles, smart cities, and industrial automation.
Fog computing, on the other hand, acts as an intermediary layer between edge devices and
the cloud, extending cloud capabilities closer to the data source. It enables pre-processing,
filtering, and analytics before sending data to the cloud, thereby improving efficiency and
security. While edge computing focuses on local processing, fog computing ensures a
distributed and hierarchical approach, balancing cloud and edge resources. Together, these
paradigms enhance the performance of IoT ecosystems, ensuring low-latency and scalable
solutions for real-time applications.
Fog computing is an extension of cloud computing. It is a layer in between
the edge and the cloud. When edge computers send huge amounts of
data to the cloud, fog nodes receive the data and analyze what’s
important. Then the fog nodes transfer the important data to the cloud to
be stored and delete the unimportant data or keep them with themselves
for further analysis. In this way, fog computing saves a lot of space in the
cloud and transfers important data quickly.
Difference Between Edge Computing and Fog Computing
S.NO. EDGE COMPUTING FOG COMPUTING
client’s network.
Graphics Processing Units (GPUs) are designed for high-throughput, massively parallel
computations. Unlike CPUs, which optimize for sequential processing, GPUs leverage
thousands of cores to execute multiple tasks simultaneously. NVIDIA CUDA (Compute
Unified Device Architecture) is a parallel computing platform and API that enables
developers to use NVIDIA GPUs for general-purpose computing (GPGPU).
Thread Hierarchy: CUDA organizes computations into grids, which consist of blocks, each
containing multiple threads. This structure enables scalable parallelism.
SIMT (Single Instruction, Multiple Thread) Architecture: CUDA executes the same
instruction on multiple threads, enhancing performance in data-intensive tasks.
Memory Hierarchy: CUDA uses different memory types, such as global, shared, and local
memory, optimizing data access patterns to improve computational efficiency.
Warp Scheduling: Threads are grouped into warps (typically 32 threads), and execution
occurs in a lock-step manner, optimizing resource utilization.
Streams and Asynchronous Execution: CUDA supports concurrent execution of multiple
kernels, overlapping computation with data transfers to maximize efficiency.
Deep Learning & AI: CUDA powers frameworks like TensorFlow and PyTorch, enabling fast
training of deep neural networks.
Scientific Simulations: Used in physics, bioinformatics, and climate modeling for high-speed
calculations.
Cryptography & Blockchain: GPU-based acceleration enhances encryption and blockchain
mining efficiency.
Computer Vision & Image Processing: CUDA accelerates real-time object detection and
video analytics.
Designed by Google for accelerating machine learning and deep learning computations.
Uses matrix multiplication optimization to speed up tensor operations.
Used in Google AI services like Google Translate and Google Photos.
Reconfigurable hardware that provides high-speed execution for tasks like 5G processing,
high-frequency trading, and genomics.
Used by Microsoft’s Project Brainwave to accelerate AI workloads.
Custom-designed chips for dedicated tasks, such as Bitcoin mining (Bitmain's ASIC miners)
and AI acceleration (TPUs, Habana Gaudi, and Graphcore IPUs).
d) Neuromorphic Chips
Conclusion
Parallelism in GPUs (via CUDA) enables massive acceleration in AI, gaming, and scientific
computations. Hardware accelerators like TPUs, FPGAs, and ASICs offer domain-specific
speedups, making modern computing more efficient. The integration of these parallel
architectures continues to push the boundaries of high-performance computing.